home *** CD-ROM | disk | FTP | other *** search
/ SGI Freeware 1999 August / SGI Freeware 1999 August.iso / dist / fw_xemacs.idb / usr / freeware / lib / xemacs-20.4 / mips-sgi-irix6.2 / DOC.z / DOC
Encoding:
Text File  |  1998-05-21  |  1.3 MB  |  29,935 lines

Text Truncated. Only the first 1MB is shown below. Download the file for the complete contents.
  1. Fexpand-abbrev
  2. Expand the abbrev before point, if any.
  3. Effective when explicitly called even when `abbrev-mode' is nil.
  4. Returns t if expansion took place.
  5.  
  6. arguments: ()
  7. Vglobal-abbrev-table
  8. The abbrev table whose abbrevs affect all buffers.
  9. Each buffer may also have a local abbrev table.
  10. If it does, the local table overrides the global one
  11. for any particular abbrev defined in both.Vlast-abbrev
  12. The abbrev-symbol of the last abbrev expanded.
  13. See the function `abbrev-symbol'.Vlast-abbrev-text
  14. The exact text of the last abbrev expanded.
  15. nil if the abbrev has already been unexpanded.Vlast-abbrev-location
  16. The location of the start of the last abbrev expanded.Vabbrev-start-location
  17. Buffer position for `expand-abbrev' to use as the start of the abbrev.
  18. nil means use the word before point as the abbrev.
  19. Calling `expand-abbrev' sets this to nil.Vabbrev-start-location-buffer
  20. Buffer that `abbrev-start-location' has been set for.
  21. Trying to expand an abbrev in any other buffer clears `abbrev-start-location'.Vabbrev-all-caps
  22. *Non-nil means expand multi-word abbrevs all caps if abbrev was so.Vpre-abbrev-expand-hook
  23. Function or functions to be called before abbrev expansion is done.
  24. This is the first thing that `expand-abbrev' does, and so this may change
  25. the current abbrev table before abbrev lookup happens.Fcons
  26. Create a new cons, give it CAR and CDR as components, and return it.
  27.  
  28. arguments: (CAR CDR)
  29. Flist
  30. Return a newly created list with specified arguments as elements.
  31. Any number of arguments, even zero arguments, are allowed.Fmake-list
  32. Return a newly created list of length LENGTH, with each element being INIT.
  33.  
  34. arguments: (LENGTH INIT)
  35. Fmake-vector
  36. Return a newly created vector of length LENGTH, with each element being INIT.
  37. See also the function `vector'.
  38.  
  39. arguments: (LENGTH INIT)
  40. Fvector
  41. Return a newly created vector with specified arguments as elements.
  42. Any number of arguments, even zero arguments, are allowed.Fmake-bit-vector
  43. Return a newly created bit vector of length LENGTH.
  44. Each element is set to INIT.  See also the function `bit-vector'.
  45.  
  46. arguments: (LENGTH INIT)
  47. Fbit-vector
  48. Return a newly created bit vector with specified arguments as elements.
  49. Any number of arguments, even zero arguments, are allowed.Fmake-byte-code
  50. Create a compiled-function object.
  51. Usage: (arglist instructions constants stack-size
  52.     &optional doc-string interactive-spec)
  53. Note that, unlike all other emacs-lisp functions, calling this with five
  54. arguments is NOT the same as calling it with six arguments, the last of
  55. which is nil.  If the INTERACTIVE arg is specified as nil, then that means
  56. that this function was defined with `(interactive)'.  If the arg is not
  57. specified, then that means the function is not interactive.
  58. This is terrible behavior which is retained for compatibility with old
  59. `.elc' files which expected these semantics.Fmake-symbol
  60. Return a newly allocated uninterned symbol whose name is NAME.
  61. Its value and function definition are void, and its property list is nil.
  62.  
  63. arguments: (STR)
  64. Fmake-marker
  65. Return a newly allocated marker which does not point at any place.
  66.  
  67. arguments: ()
  68. Fmake-string
  69. Return a newly created string of length LENGTH, with each element being INIT.
  70. LENGTH must be an integer and INIT must be a character.
  71.  
  72. arguments: (LENGTH INIT)
  73. Fpurecopy
  74. Make a copy of OBJECT in pure storage.
  75. Recursively copies contents of vectors and cons cells.
  76. Does not copy symbols.
  77.  
  78. arguments: (OBJ)
  79. Fgarbage-collect
  80. Reclaim storage for Lisp objects no longer needed.
  81. Returns info on amount of space in use:
  82.  ((USED-CONSES . FREE-CONSES) (USED-SYMS . FREE-SYMS)
  83.   (USED-MARKERS . FREE-MARKERS) USED-STRING-CHARS USED-VECTOR-SLOTS
  84.   PLIST)
  85.   where `PLIST' is a list of alternating keyword/value pairs providing
  86.   more detailed information.
  87. Garbage collection happens automatically if you cons more than
  88. `gc-cons-threshold' bytes of Lisp data since previous garbage collection.
  89.  
  90. arguments: ()
  91. Fconsing-since-gc
  92. Return the number of bytes consed since the last garbage collection.
  93. "Consed" is a misnomer in that this actually counts allocation
  94. of all different kinds of objects, not just conses.
  95.  
  96. If this value exceeds `gc-cons-threshold', a garbage collection happens.
  97.  
  98. arguments: ()
  99. Fmemory-limit
  100. Return the address of the last byte Emacs has allocated, divided by 1024.
  101. This may be helpful in debugging Emacs's memory usage.
  102. The value is divided by 1024 to make sure it will fit in a lisp integer.
  103.  
  104. arguments: ()
  105. Vgc-cons-threshold
  106. *Number of bytes of consing between garbage collections.
  107. "Consing" is a misnomer in that this actually counts allocation
  108. of all different kinds of objects, not just conses.
  109. Garbage collection can happen automatically once this many bytes have been
  110. allocated since the last garbage collection.  All data types count.
  111.  
  112. Garbage collection happens automatically when `eval' or `funcall' are
  113. called.  (Note that `funcall' is called implicitly as part of evaluation.)
  114. By binding this temporarily to a large number, you can effectively
  115. prevent garbage collection during a part of the program.
  116.  
  117. See also `consing-since-gc'.Vpure-bytes-used
  118. Number of bytes of sharable Lisp data allocated so far.Vdata-bytes-used
  119. Number of bytes of unshared memory allocated in this session.Vdata-bytes-free
  120. Number of bytes of unshared memory remaining available in this session.Vdebug-allocation
  121. If non-zero, print out information to stderr about all objects allocated.
  122. See also `debug-allocation-backtrace-length'.Vdebug-allocation-backtrace-length
  123. Length (in stack frames) of short backtrace printed out by `debug-allocation'.Vpurify-flag
  124. Non-nil means loading Lisp code in order to dump an executable.
  125. This means that certain objects should be allocated in shared (pure) space.Vpre-gc-hook
  126. Function or functions to be run just before each garbage collection.
  127. Interrupts, garbage collection, and errors are inhibited while this hook
  128. runs, so be extremely careful in what you add here.  In particular, avoid
  129. consing, and do not interact with the user.Vpost-gc-hook
  130. Function or functions to be run just after each garbage collection.
  131. Interrupts, garbage collection, and errors are inhibited while this hook
  132. runs, so be extremely careful in what you add here.  In particular, avoid
  133. consing, and do not interact with the user.Vgc-message
  134. String to print to indicate that a garbage collection is in progress.
  135. This is printed in the echo area.  If the selected frame is on a
  136. window system and `gc-pointer-glyph' specifies a value (i.e. a pointer
  137. image instance) in the domain of the selected frame, the mouse pointer
  138. will change instead of this message being printed.Vgc-pointer-glyph
  139. Pointer glyph used to indicate that a garbage collection is in progress.
  140. If the selected window is on a window system and this glyph specifies a
  141. value (i.e. a pointer image instance) in the domain of the selected
  142. window, the pointer will be changed as specified during garbage collection.
  143. Otherwise, a message will be printed in the echo area, as controlled
  144. by `gc-message'.Fbufferp
  145. T if OBJECT is an editor buffer.
  146.  
  147. arguments: (OBJECT)
  148. Fbuffer-live-p
  149. T if OBJECT is an editor buffer that has not been deleted.
  150.  
  151. arguments: (OBJECT)
  152. Fbuffer-list
  153. Return a list of all existing live buffers.
  154. The order is specific to the selected frame; if the optional FRAME
  155. argument is provided, the ordering for that frame is returned instead.
  156. If the FRAME argument is t, then the global (non-frame) ordering is
  157. returned instead.
  158.  
  159. arguments: (&optional FRAME)
  160. Fdecode-buffer
  161. Validate BUFFER or if BUFFER is nil, return the current buffer.
  162. If BUFFER is a valid buffer or a string representing a valid buffer,
  163. the corresponding buffer object will be returned.  Otherwise an error
  164. will be signaled.
  165.  
  166. arguments: (BUFFER)
  167. Fget-buffer
  168. Return the buffer named NAME (a string).
  169. If there is no live buffer named NAME, return nil.
  170. NAME may also be a buffer; if so, the value is that buffer.
  171.  
  172. arguments: (NAME)
  173. Fget-file-buffer
  174. Return the buffer visiting file FILENAME (a string).
  175. The buffer's `buffer-file-name' must match exactly the expansion of FILENAME.
  176. If there is no such live buffer, return nil.
  177.  
  178. Normally, the comparison is done by canonicalizing FILENAME (using
  179. `expand-file-name') and comparing that to the value of `buffer-file-name'
  180. for each existing buffer.  However,  If `find-file-compare-truenames' is
  181. non-nil, FILENAME will be converted to its truename and the search will be
  182. done on each buffer's value of `buffer-file-truename' instead of
  183. `buffer-file-name'.  Otherwise, if `find-file-use-truenames' is non-nil,
  184. FILENAME will be converted to its truename and used for searching, but
  185. the search will still be done on `buffer-file-name'.
  186.  
  187. arguments: (FILENAME)
  188. Fget-buffer-create
  189. Return the buffer named NAME, or create such a buffer and return it.
  190. A new buffer is created if there is no live buffer named NAME.
  191. If NAME starts with a space, the new buffer does not keep undo information.
  192. If NAME is a buffer instead of a string, then it is the value returned.
  193. The value is never nil.
  194.  
  195. arguments: (NAME)
  196. Fmake-indirect-buffer
  197. Create and return an indirect buffer for buffer BASE, named NAME.
  198. BASE should be an existing buffer (or buffer name).
  199. NAME should be a string which is not the name of an existing buffer.
  200. If BASE is an indirect buffer itself, the base buffer for that buffer
  201.  is made the base buffer for the newly created buffer. (Thus, there will
  202.  never be indirect buffers whose base buffers are themselves indirect.)
  203.  
  204. arguments: (BASE-BUFFER NAME)
  205. Fgenerate-new-buffer-name
  206. Return a string that is the name of no existing buffer based on NAME.
  207. If there is no live buffer named NAME, then return NAME.
  208. Otherwise modify name by appending `<NUMBER>', incrementing NUMBER
  209. until an unused name is found, and then return that name.
  210. Optional second argument IGNORE specifies a name that is okay to use
  211. (if it is in the sequence to be tried)
  212. even if a buffer with that name exists.
  213.  
  214. arguments: (NAME &optional IGNORE)
  215. Fbuffer-name
  216. Return the name of BUFFER, as a string.
  217. With no argument or nil as argument, return the name of the current buffer.
  218.  
  219. arguments: (&optional BUFFER)
  220. Fbuffer-file-name
  221. Return name of file BUFFER is visiting, or nil if none.
  222. No argument or nil as argument means use the current buffer.
  223.  
  224. arguments: (&optional BUFFER)
  225. Fbuffer-base-buffer
  226. Return the base buffer of indirect buffer BUFFER.
  227. If BUFFER is not indirect, return nil.
  228.  
  229. arguments: (&optional BUFFER)
  230. Fbuffer-indirect-children
  231. Return a list of all indirect buffers whose base buffer is BUFFER.
  232. If BUFFER is indirect, the return value will always be nil; see
  233. `make-indirect-buffer'.
  234.  
  235. arguments: (&optional BUFFER)
  236. Fbuffer-local-variables
  237. Return an alist of variables that are buffer-local in BUFFER.
  238. Most elements look like (SYMBOL . VALUE), describing one variable.
  239. For a symbol that is locally unbound, just the symbol appears in the value.
  240. Note that storing new VALUEs in these elements doesn't change the variables.
  241. No argument or nil as argument means use current buffer as BUFFER.
  242.  
  243. arguments: (&optional BUFFER)
  244. Fbuffer-dedicated-frame
  245. Return the frame dedicated to this BUFFER, or nil if there is none.
  246. No argument or nil as argument means use current buffer as BUFFER.
  247.  
  248. arguments: (&optional BUFFER)
  249. Fset-buffer-dedicated-frame
  250. For this BUFFER, set the FRAME dedicated to it.
  251. FRAME must be a frame or nil.
  252.  
  253. arguments: (BUFFER FRAME)
  254. Fbuffer-modified-p
  255. Return t if BUFFER was modified since its file was last read or saved.
  256. No argument or nil as argument means use current buffer as BUFFER.
  257.  
  258. arguments: (&optional BUFFER)
  259. Fset-buffer-modified-p
  260. Mark BUFFER as modified or unmodified according to FLAG.
  261. A non-nil FLAG means mark the buffer modified.  No argument or nil
  262. as BUFFER means use current buffer.
  263.  
  264. arguments: (FLAG &optional BUFFER)
  265. Fbuffer-modified-tick
  266. Return BUFFER's tick counter, incremented for each change in text.
  267. Each buffer has a tick counter which is incremented each time the text in
  268. that buffer is changed.  It wraps around occasionally.
  269. No argument or nil as argument means use current buffer as BUFFER.
  270.  
  271. arguments: (&optional BUFFER)
  272. Frename-buffer
  273. Change current buffer's name to NEWNAME (a string).
  274. If second arg UNIQUE is nil or omitted, it is an error if a
  275. buffer named NEWNAME already exists.
  276. If UNIQUE is non-nil, come up with a new name using
  277. `generate-new-buffer-name'.
  278. Interactively, one can set UNIQUE with a prefix argument.
  279. Returns the name we actually gave the buffer.
  280. This does not change the name of the visited file (if any).
  281.  
  282. arguments: (NEWNAME &optional UNIQUE)
  283. Fother-buffer
  284. Return most recently selected buffer other than BUFFER.
  285. Buffers not visible in windows are preferred to visible buffers,
  286. unless optional third argument VISIBLE-OK is non-nil.
  287. If no other buffer exists, the buffer `*scratch*' is returned.
  288. If BUFFER is omitted or nil, some interesting buffer is returned.
  289.  
  290. The ordering is for this frame; If second optional argument FRAME
  291. is provided, then the ordering is for that frame.  If the second arg
  292. is t, then the global ordering is returned.
  293.  
  294. Note: In FSF Emacs, this function takes two arguments: BUFFER and
  295. VISIBLE-OK.
  296.  
  297. arguments: (&optional BUFFER FRAME VISIBLE-OK)
  298. Fbuffer-disable-undo
  299. Make BUFFER stop keeping undo information.
  300. Any undo records it already has are discarded.
  301. No argument or nil as argument means do this for the current buffer.
  302.  
  303. arguments: (&optional BUFFER)
  304. Fbuffer-enable-undo
  305. Start keeping undo information for buffer BUFFER.
  306. No argument or nil as argument means do this for the current buffer.
  307.  
  308. arguments: (&optional BUFFER)
  309. Fkill-buffer
  310. Kill the buffer BUFNAME.
  311. The argument may be a buffer or may be the name of a buffer.
  312. An argument of nil means kill the current buffer.
  313.  
  314. Value is t if the buffer is actually killed, nil if user says no.
  315.  
  316. The value of `kill-buffer-hook' (which may be local to that buffer),
  317. if not void, is a list of functions to be called, with no arguments,
  318. before the buffer is actually killed.  The buffer to be killed is current
  319. when the hook functions are called.
  320.  
  321. Any processes that have this buffer as the `process-buffer' are killed
  322. with `delete-process'.
  323.  
  324. arguments: (BUFNAME)
  325. Frecord-buffer
  326. Place buffer BUF first in the buffer order.
  327. Call this function when a buffer is selected "visibly".
  328.  
  329. This function changes the global buffer order and the per-frame buffer
  330. order for the selected frame.  The buffer order keeps track of recency
  331. of selection so that `other-buffer' will return a recently selected
  332. buffer.  See `other-buffer' for more information.
  333.  
  334. arguments: (BUF)
  335. Fset-buffer-major-mode
  336. Set an appropriate major mode for BUFFER, according to `default-major-mode'.
  337. Use this function before selecting the buffer, since it may need to inspect
  338. the current buffer's major mode.
  339.  
  340. arguments: (BUF)
  341. Fcurrent-buffer
  342. Return the current buffer as a Lisp object.
  343.  
  344. arguments: ()
  345. Fset-buffer
  346. Make the buffer BUFNAME current for editing operations.
  347. BUFNAME may be a buffer or the name of an existing buffer.
  348. See also `save-excursion' when you want to make a buffer current temporarily.
  349. This function does not display the buffer, so its effect ends
  350. when the current command terminates.
  351. Use `switch-to-buffer' or `pop-to-buffer' to switch buffers permanently.
  352.  
  353. arguments: (BUFNAME)
  354. Fbarf-if-buffer-read-only
  355. Signal a `buffer-read-only' error if the buffer is read-only.
  356. Optional argument BUFFER defaults to the current buffer.
  357.  
  358. If optional argument START is non-nil, all extents in the buffer
  359. which overlap that part of the buffer are checked to ensure none has a
  360. `read-only' property. (Extents that lie completely within the range,
  361. however, are not checked.) END defaults to the value of START.
  362.  
  363. If START and END are equal, the range checked is [START, END] (i.e.
  364. closed on both ends); otherwise, the range checked is (START, END)
  365. (open on both ends), except that extents that lie completely within
  366. [START, END] are not checked.  See `extent-in-region-p' for a fuller
  367. discussion.
  368.  
  369. arguments: (&optional BUFFER START END)
  370. Fbury-buffer
  371. Put BUFFER at the end of the list of all buffers.
  372. There it is the least likely candidate for `other-buffer' to return;
  373. thus, the least likely buffer for \[switch-to-buffer] to select by default.
  374. If BUFFER is nil or omitted, bury the current buffer.
  375. Also, if BUFFER is nil or omitted, remove the current buffer from the
  376. selected window if it is displayed there.
  377. If BEFORE is non-nil, it specifies a buffer before which BUFFER
  378. will be placed, instead of being placed at the end.
  379.  
  380. arguments: (&optional BUFFER BEFORE)
  381. Ferase-buffer
  382. Delete the entire contents of the BUFFER.
  383. Any clipping restriction in effect (see `narrow-to-region') is removed,
  384. so the buffer is truly empty after this.
  385. BUFFER defaults to the current buffer if omitted.
  386.  
  387. arguments: (&optional BUFFER)
  388. Fkill-all-local-variables
  389. Switch to Fundamental mode by killing current buffer's local variables.
  390. Most local variable bindings are eliminated so that the default values
  391. become effective once more.  Also, the syntax table is set from
  392. `standard-syntax-table', the category table is set from
  393. `standard-category-table' (if support for Mule exists), local keymap is set
  394. to nil, the abbrev table is set from `fundamental-mode-abbrev-table',
  395. and all specifier specifications whose locale is the current buffer
  396. are removed.  This function also forces redisplay of the modeline.
  397.  
  398. Every function to select a new major mode starts by
  399. calling this function.
  400.  
  401. As a special exception, local variables whose names have
  402. a non-nil `permanent-local' property are not eliminated by this function.
  403.  
  404. The first thing this function does is run
  405. the normal hook `change-major-mode-hook'.
  406.  
  407. arguments: ()
  408. Fbuffer-memory-usage
  409. Return stats about the memory usage of buffer BUFFER.
  410. The values returned are in the form an alist of usage types and byte
  411. counts.  The byte counts attempt to encompass all the memory used
  412. by the buffer (separate from the memory logically associated with a
  413. buffer or frame), including internal structures and any malloc()
  414. overhead associated with them.  In practice, the byte counts are
  415. underestimated because certain memory usage is very hard to determine
  416. (e.g. the amount of memory used inside the Xt library or inside the
  417. X server) and because there is other stuff that might logically
  418. be associated with a window, buffer, or frame (e.g. window configurations,
  419. glyphs) but should not obviously be included in the usage counts.
  420.  
  421. Multiple slices of the total memory usage may be returned, separated
  422. by a nil.  Each slice represents a particular view of the memory, a
  423. particular way of partitioning it into groups.  Within a slice, there
  424. is no overlap between the groups of memory, and each slice collectively
  425. represents all the memory concerned.
  426.  
  427. arguments: (BUFFER)
  428. Vchange-major-mode-hook
  429. List of hooks to be run before killing local variables in a buffer.
  430. This should be used by any mode that temporarily alters the contents or
  431. the read-only state of the buffer.  See also `kill-all-local-variables'.Vfind-file-compare-truenames
  432. If this is true, then the find-file command will check the truenames
  433. of all visited files when deciding whether a given file is already in
  434. a buffer, instead of just the buffer-file-name.  This means that if you
  435. attempt to visit another file which is a symbolic-link to a file which is
  436. already in a buffer, the existing buffer will be found instead of a newly-
  437. created one.  This works if any component of the pathname (including a non-
  438. terminal component) is a symbolic link as well, but doesn't work with hard
  439. links (nothing does).
  440.  
  441. See also the variable find-file-use-truenames.Vfind-file-use-truenames
  442. If this is true, then a buffer's visited file-name will always be
  443. chased back to the real file; it will never be a symbolic link, and there
  444. will never be a symbolic link anywhere in its directory path.
  445. That is, the buffer-file-name and buffer-file-truename will be equal.
  446. This doesn't work with hard links.
  447.  
  448. See also the variable find-file-compare-truenames.Vbefore-change-functions
  449. List of functions to call before each text change.
  450. Two arguments are passed to each function: the positions of
  451. the beginning and end of the range of old text to be changed.
  452. (For an insertion, the beginning and end are at the same place.)
  453. No information is given about the length of the text after the change.
  454.  
  455. Buffer changes made while executing the `before-change-functions'
  456. don't call any before-change or after-change functions.Vafter-change-functions
  457. List of functions to call after each text change.
  458. Three arguments are passed to each function: the positions of
  459. the beginning and end of the range of changed text,
  460. and the length of the pre-change text replaced by that range.
  461. (For an insertion, the pre-change length is zero;
  462. for a deletion, that length is the number of characters deleted,
  463. and the post-change beginning and end are at the same place.)
  464.  
  465. Buffer changes made while executing `after-change-functions'
  466. don't call any before-change or after-change functions.Vbefore-change-function
  467. Vafter-change-function
  468. Vfirst-change-hook
  469. A list of functions to call before changing a buffer which is unmodified.
  470. The functions are run using the `run-hooks' function.Vundo-threshold
  471. Keep no more undo information once it exceeds this size.
  472. This threshold is applied when garbage collection happens.
  473. The size is counted as the number of bytes occupied,
  474. which includes both saved text and other data.Vundo-high-threshold
  475. Don't keep more than this much size of undo information.
  476. A command which pushes past this size is itself forgotten.
  477. This threshold is applied when garbage collection happens.
  478. The size is counted as the number of bytes occupied,
  479. which includes both saved text and other data.Vinhibit-read-only
  480. *Non-nil means disregard read-only status of buffers or characters.
  481. If the value is t, disregard `buffer-read-only' and all `read-only'
  482. text properties.  If the value is a list, disregard `buffer-read-only'
  483. and disregard a `read-only' extent property or text property if the
  484. property value is a member of the list.Vkill-buffer-query-functions
  485. List of functions called with no args to query before killing a buffer.Vdelete-auto-save-files
  486. *Non-nil means delete auto-save file when a buffer is saved or killed.Vdefault-modeline-format
  487. Default value of `modeline-format' for buffers that don't override it.
  488. This is the same as (default-value 'modeline-format).Vdefault-abbrev-mode
  489. Default value of `abbrev-mode' for buffers that do not override it.
  490. This is the same as (default-value 'abbrev-mode).Vdefault-ctl-arrow
  491. Default value of `ctl-arrow' for buffers that do not override it.
  492. This is the same as (default-value 'ctl-arrow).Vdefault-display-direction
  493. Default display-direction for buffers that do not override it.
  494. This is the same as (default-value 'display-direction).
  495. Note: This is not yet implemented.Vdefault-truncate-lines
  496. Default value of `truncate-lines' for buffers that do not override it.
  497. This is the same as (default-value 'truncate-lines).Vdefault-fill-column
  498. Default value of `fill-column' for buffers that do not override it.
  499. This is the same as (default-value 'fill-column).Vdefault-left-margin
  500. Default value of `left-margin' for buffers that do not override it.
  501. This is the same as (default-value 'left-margin).Vdefault-tab-width
  502. Default value of `tab-width' for buffers that do not override it.
  503. This is the same as (default-value 'tab-width).Vdefault-case-fold-search
  504. Default value of `case-fold-search' for buffers that don't override it.
  505. This is the same as (default-value 'case-fold-search).Vdefault-buffer-file-type
  506. Default file type for buffers that do not override it.
  507. This is the same as (default-value 'buffer-file-type).
  508. The file type is nil for text, t for binary.Vmodeline-format
  509. Template for displaying modeline for current buffer.
  510. Each buffer has its own value of this variable.
  511. Value may be a string, a symbol or a list or cons cell.
  512. For a symbol, its value is used (but it is ignored if t or nil).
  513.  A string appearing directly as the value of a symbol is processed verbatim
  514.  in that the %-constructs below are not recognized.
  515. For a glyph, it is inserted as is.
  516. For a list whose car is a symbol, the symbol's value is taken,
  517.  and if that is non-nil, the cadr of the list is processed recursively.
  518.  Otherwise, the caddr of the list (if there is one) is processed.
  519. For a list whose car is a string or list, each element is processed
  520.  recursively and the results are effectively concatenated.
  521. For a list whose car is an integer, the cdr of the list is processed
  522.   and padded (if the number is positive) or truncated (if negative)
  523.   to the width specified by that number.
  524. For a list whose car is an extent, the cdr of the list is processed
  525.  normally but the results are displayed using the face of the
  526.  extent, and mouse clicks over this section are processed using the
  527.  keymap of the extent. (In addition, if the extent has a help-echo
  528.  property, that string will be echoed when the mouse moves over this
  529.  section.) See `generated-modeline-string' for more information.
  530. For a list whose car is a face, the cdr of the list is processed
  531.  normally but the results will be displayed using the face in the car.
  532. For a list whose car is a keymap, the cdr of the list is processed
  533.  normally but the keymap will apply for mouse clicks over the results,
  534.  in addition to `modeline-map'.  Nested keymap specifications are
  535.  handled properly.
  536. A string is printed verbatim in the modeline except for %-constructs:
  537.   (%-constructs are processed when the string is the entire modeline-format
  538.    or when it is found in a cons-cell or a list)
  539.   %b -- print buffer name.      %c -- print the current column number.
  540.   %f -- print visited file name.
  541.   %* -- print %, * or hyphen.   %+ -- print *, % or hyphen.
  542.     % means buffer is read-only and * means it is modified.
  543.     For a modified read-only buffer, %* gives % and %+ gives *.
  544.   %s -- print process status.   %l -- print the current line number.
  545.   %S -- print name of selected frame (only meaningful under X Windows).
  546.   %p -- print percent of buffer above top of window, or Top, Bot or All.
  547.   %P -- print percent of buffer above bottom of window, perhaps plus Top,
  548.         or print Bottom or All.
  549.   %n -- print Narrow if appropriate.
  550.   %t -- Under MS-DOS, print T if files is text, B if binary.
  551.   %C -- under XEmacs/mule, print the mnemonic for `buffer-file-coding-system'.
  552.   %[ -- print one [ for each recursive editing level.  %] similar.
  553.   %% -- print %.                %- -- print infinitely many dashes.
  554. Decimal digits after the % specify field width to which to pad.Vdefault-major-mode
  555. *Major mode for new buffers.  Defaults to `fundamental-mode'.
  556. nil here means use current buffer's major mode.Vfundamental-mode-abbrev-table
  557. The abbrev table of mode-specific abbrevs for Fundamental Mode.Vmajor-mode
  558. Symbol for current buffer's major mode.Vmode-name
  559. Pretty name of current buffer's major mode (a string).Vabbrev-mode
  560. Non-nil turns on automatic expansion of abbrevs as they are inserted.
  561. Automatically becomes buffer-local when set in any fashion.Vcase-fold-search
  562. *Non-nil if searches should ignore case.
  563. Automatically becomes buffer-local when set in any fashion.
  564.  
  565. BUG: Under XEmacs/Mule, translations to or from non-ASCII characters
  566.  (this includes chars in the range 128 - 255) are ignored by
  567.  the string/buffer-searching routines.  Thus, `case-fold-search'
  568.  will not correctly conflate a-umlaut and A-umlaut even if the
  569.  case tables call for this.Vfill-column
  570. *Column beyond which automatic line-wrapping should happen.
  571. Automatically becomes buffer-local when set in any fashion.Vleft-margin
  572. *Column for the default indent-line-function to indent to.
  573. Linefeed indents to this column in Fundamental mode.
  574. Automatically becomes buffer-local when set in any fashion.
  575. Do not confuse this with the specifier `left-margin-width';
  576. that controls the size of a margin that is displayed outside
  577. of the text area.Vtab-width
  578. *Distance between tab stops (for display of tab characters), in columns.
  579. Automatically becomes buffer-local when set in any fashion.Vctl-arrow
  580. *Non-nil means display control chars with uparrow.
  581. Nil means use backslash and octal digits.
  582. An integer means characters >= ctl-arrow are assumed to be printable, and
  583. will be displayed as a single glyph.
  584. Any other value is the same as 160 - the code SPC with the high bit on.
  585.  
  586. The interpretation of this variable is likely to change in the future.
  587.  
  588. Automatically becomes buffer-local when set in any fashion.
  589. This variable does not apply to characters whose display is specified
  590. in the current display table (if there is one).Vtruncate-lines
  591. *Non-nil means do not display continuation lines;
  592. give each line of text one frame line.
  593. Automatically becomes buffer-local when set in any fashion.
  594.  
  595. Note that this is overridden by the variable
  596. `truncate-partial-width-windows' if that variable is non-nil
  597. and this buffer is not full-frame width.Vdefault-directory
  598. Name of default directory of current buffer.  Should end with slash.
  599. Each buffer has its own value of this variable.Vbuffer-file-type
  600. "Non-nil if the visited file is a binary file.
  601. This variable is meaningful on MS-DOS and Windows NT.
  602. On those systems, it is automatically local in every buffer.
  603. On other systems, this variable is normally always nil.Vdefault-buffer-file-coding-system
  604. Default value of `buffer-file-coding-system' for buffers that do not override it.
  605. This is the same as (default-value 'buffer-file-coding-system).
  606. This value is used both for buffers without associated files and
  607. for buffers whose files do not have any apparent coding system.
  608. See `buffer-file-coding-system'.Vbuffer-file-coding-system
  609. *Current coding system for the current buffer.
  610. When the buffer is written out into a file, this coding system will be
  611. used for the encoding.  Automatically buffer-local when set in any
  612. fashion.  This is normally set automatically when a file is loaded in
  613. based on the determined coding system of the file (assuming that
  614. `buffer-file-coding-system-for-read' is set to `undecided', which
  615. calls for automatic determination of the file's coding system).
  616. Normally the modeline indicates the current file coding system using
  617. its mnemonic abbreviation.
  618.  
  619. The default value for this variable (which is normally used for
  620. buffers without associated files) is also used when automatic
  621. detection of a file's encoding is called for and there was no
  622. discernable encoding in the file (i.e. it was entirely or almost
  623. entirely ASCII).  The default value should generally *not* be set to
  624. nil (equivalent to `no-conversion'), because if extended characters
  625. are ever inserted into the buffer, they will be lost when the file is
  626. written out.  A good choice is `iso-2022-8' (the simple ISO 2022 8-bit
  627. encoding), which will write out ASCII and Latin-1 characters in the
  628. standard (and highly portable) fashion and use standard escape
  629. sequences for other charsets.  Another reasonable choice is
  630. `escape-quoted', which is equivalent to `iso-2022-8' but prefixes
  631. certain control characters with ESC to make sure they are not
  632. interpreted as escape sequences when read in.  This latter coding
  633. system results in more "correct" output in the presence of control
  634. characters in the buffer, in the sense that when read in again using
  635. the same coding system, the result will virtually always match the
  636. original contents of the buffer, which is not the case with
  637. `iso-2022-8'; but the output is less portable when dealing with binary
  638. data -- there may be stray ESC characters when the file is read by
  639. another program.
  640.  
  641. `buffer-file-coding-system' does *not* control the coding system used when
  642. a file is read in.  Use the variables `buffer-file-coding-system-for-read'
  643. and `buffer-file-coding-system-alist' for that.  From a Lisp program, if
  644. you wish to unilaterally specify the coding system used for one
  645. particular operation, you should bind the variable
  646. `coding-system-for-read' rather than changing the other two
  647. variables just mentioned, which are intended to be used for
  648. global environment specification.  */ );
  649. #endif /* MULE */
  650.  
  651.   DEFVAR_BUFFER_LOCAL ("auto-fill-function", auto_fill_function /*
  652. Function called (if non-nil) to perform auto-fill.
  653. It is called after self-inserting a space at a column beyond `fill-column'.
  654. Each buffer has its own value of this variable.
  655. NOTE: This variable is not an ordinary hook;
  656. It may not be a list of functions.Vbuffer-file-name
  657. Name of file visited in current buffer, or nil if not visiting a file.
  658. Each buffer has its own value of this variable.Vbuffer-file-truename
  659. The real name of the file visited in the current buffer,
  660. or nil if not visiting a file.  This is the result of passing
  661. buffer-file-name to the `file-truename' function.  Every buffer has
  662. its own value of this variable.  This variable is automatically
  663. maintained by the functions that change the file name associated
  664. with a buffer.Vbuffer-auto-save-file-name
  665. Name of file for auto-saving current buffer,
  666. or nil if buffer should not be auto-saved.
  667. Each buffer has its own value of this variable.Vbuffer-read-only
  668. Non-nil if this buffer is read-only.
  669. Each buffer has its own value of this variable.Vbuffer-backed-up
  670. Non-nil if this buffer's file has been backed up.
  671. Backing up is done before the first time the file is saved.
  672. Each buffer has its own value of this variable.Vbuffer-saved-size
  673. Length of current buffer when last read in, saved or auto-saved.
  674. 0 initially.
  675. Each buffer has its own value of this variable.Vselective-display
  676. Non-nil enables selective display:
  677. Integer N as value means display only lines
  678.  that start with less than n columns of space.
  679. A value of t means, after a ^M, all the rest of the line is invisible.
  680.  Then ^M's in the file are written into files as newlines.
  681.  
  682. Automatically becomes buffer-local when set in any fashion.Vselective-display-ellipses
  683. t means display ... on previous line when a line is invisible.
  684. Automatically becomes buffer-local when set in any fashion.Vlocal-abbrev-table
  685. Local (mode-specific) abbrev table of current buffer.Voverwrite-mode
  686. Non-nil if self-insertion should replace existing text.
  687. The value should be one of `overwrite-mode-textual',
  688. `overwrite-mode-binary', or nil.
  689. If it is `overwrite-mode-textual', self-insertion still
  690. inserts at the end of a line, and inserts when point is before a tab,
  691. until the tab is filled in.
  692. If `overwrite-mode-binary', self-insertion replaces newlines and tabs too.
  693. Automatically becomes buffer-local when set in any fashion.Vbuffer-undo-list
  694. List of undo entries in current buffer.
  695. Recent changes come first; older changes follow newer.
  696.  
  697. An entry (BEG . END) represents an insertion which begins at
  698. position BEG and ends at position END.
  699.  
  700. An entry (TEXT . POSITION) represents the deletion of the string TEXT
  701. from (abs POSITION).  If POSITION is positive, point was at the front
  702. of the text being deleted; if negative, point was at the end.
  703.  
  704. An entry (t HIGH . LOW) indicates that the buffer previously had
  705. "unmodified" status.  HIGH and LOW are the high and low 16-bit portions
  706. of the visited file's modification time, as of that time.  If the
  707. modification time of the most recent save is different, this entry is
  708. obsolete.
  709.  
  710. An entry of the form EXTENT indicates that EXTENT was attached in
  711. the buffer.  Undoing an entry of this form detaches EXTENT.
  712.  
  713. An entry of the form (EXTENT START END) indicates that EXTENT was
  714. detached from the buffer.  Undoing an entry of this form attaches
  715. EXTENT from START to END.
  716.  
  717. An entry of the form POSITION indicates that point was at the buffer
  718. location given by the integer.  Undoing an entry of this form places
  719. point at POSITION.
  720.  
  721. nil marks undo boundaries.  The undo command treats the changes
  722. between two undo boundaries as a single step to be undone.
  723.  
  724. If the value of the variable is t, undo information is not recorded.Vpoint-before-scroll
  725. Value of point before the last series of scroll operations, or nil.Vbuffer-file-format
  726. List of formats to use when saving this buffer.
  727. Formats are defined by `format-alist'.  This variable is
  728. set when a file is visited.  Automatically local in all buffers.Vbuffer-invisibility-spec
  729. Invisibility spec of this buffer.
  730. The default is t, which means that text is invisible
  731. if it has (or is covered by an extent with) a non-nil `invisible' property.
  732. If the value is a list, a text character is invisible if its `invisible'
  733. property is an element in that list.
  734. If an element is a cons cell of the form (PROP . ELLIPSIS),
  735. then characters with property value PROP are invisible,
  736. and they have an ellipsis as well if ELLIPSIS is non-nil.
  737. Note that the actual characters used for the ellipsis are controllable
  738. using `invisible-text-glyph', and default to "...".Vgenerated-modeline-string
  739. String of characters in this buffer's modeline as of the last redisplay.
  740. Each time the modeline is recomputed, the resulting characters are
  741. stored in this string, which is resized as necessary.  You may not
  742. set this variable, and modifying this string will not change the
  743. modeline; you have to change `modeline-format' if you want that.
  744.  
  745. For each extent in `modeline-format' that is encountered when
  746. processing the modeline, a corresponding extent is placed in
  747. `generated-modeline-string' and covers the text over which the
  748. extent in `modeline-format' applies.  The extent in
  749. `generated-modeline-string' is made a child of the extent in
  750. `modeline-format', which means that it inherits all properties from
  751. that extent.  Note that the extents in `generated-modeline-string'
  752. are managed automatically.  You should not explicitly put any extents
  753. in `generated-modeline-string'; if you do, they will disappear the
  754. next time the modeline is processed.
  755.  
  756. For extents in `modeline-format', the following properties are currently
  757. handled:
  758.  
  759. `face'
  760.     Affects the face of the modeline text.  Currently, faces do
  761.     not merge properly; only the most recently encountered face
  762.     is used.  This is a bug.
  763.  
  764. `keymap'
  765.     Affects the disposition of button events over the modeline
  766.     text.  Multiple applicable keymaps *are* handled properly,
  767.     and `modeline-map' still applies to any events that don't
  768.     have bindings in extent-specific keymaps.
  769.  
  770. `help-echo'
  771.     If a string, causes the string to be displayed when the mouse
  772.     moves over the text.Fbyte-code
  773. Function used internally in byte-compiled code.
  774. The first argument is a string of byte code; the second, a vector of constants;
  775. the third, the maximum stack depth used in this function.
  776. If the third argument is incorrect, Emacs may crash.
  777.  
  778. arguments: (BYTESTR VECTOR MAXDEPTH)
  779. Vbyte-code-meter
  780. A vector of vectors which holds a histogram of byte-code usage.
  781. (aref (aref byte-code-meter 0) CODE) indicates how many times the byte
  782. opcode CODE has been executed.
  783. (aref (aref byte-code-meter CODE1) CODE2), where CODE1 is not 0,
  784. indicates how many times the byte opcodes CODE1 and CODE2 have been
  785. executed in succession.Vbyte-metering-on
  786. If non-nil, keep profiling information on byte code usage.
  787. The variable byte-code-meter indicates how often each byte opcode is used.
  788. If a symbol has a property named `byte-code-meter' whose value is an
  789. integer, it is incremented each time that symbol's function is called.Finteractive
  790. Specify a way of parsing arguments for interactive use of a function.
  791. For example, write
  792.   (defun foo (arg) "Doc string" (interactive "p") ...use arg...)
  793. to make ARG be the prefix argument when `foo' is called as a command.
  794. The "call" to `interactive' is actually a declaration rather than a function;
  795.  it tells `call-interactively' how to read arguments
  796.  to pass to the function.
  797. When actually called, `interactive' just returns nil.
  798.  
  799. The argument of `interactive' is usually a string containing a code letter
  800.  followed by a prompt.  (Some code letters do not use I/O to get
  801.  the argument and do not need prompts.)  To prompt for multiple arguments,
  802.  give a code letter, its prompt, a newline, and another code letter, etc.
  803.  Prompts are passed to format, and may use % escapes to print the
  804.  arguments that have already been read.
  805. If the argument is not a string, it is evaluated to get a list of
  806.  arguments to pass to the function.
  807. Just `(interactive)' means pass no args when calling interactively.
  808.  
  809. Code letters available are:
  810. a -- Function name: symbol with a function definition.
  811. b -- Name of existing buffer.
  812. B -- Name of buffer, possibly nonexistent.
  813. c -- Character.
  814. C -- Command name: symbol with interactive function definition.
  815. d -- Value of point as number.  Does not do I/O.
  816. D -- Directory name.
  817. e -- Last mouse-button or misc-user event that invoked this command.
  818.      If used more than once, the Nth `e' returns the Nth such event.
  819.      Does not do I/O.
  820. f -- Existing file name.
  821. F -- Possibly nonexistent file name.
  822. i -- Always nil, ignore.  Use to skip arguments when interactive.
  823. k -- Key sequence (a vector of events).
  824. K -- Key sequence to be redefined (do not automatically down-case).
  825. m -- Value of mark as number.  Does not do I/O.
  826. n -- Number read using minibuffer.
  827. N -- Prefix arg converted to number, or if none, do like code `n'.
  828. p -- Prefix arg converted to number.  Does not do I/O.
  829. P -- Prefix arg in raw form.  Does not do I/O.
  830. r -- Region: point and mark as 2 numeric args, smallest first.  Does no I/O.
  831. s -- Any string.
  832. S -- Any symbol.
  833. v -- Variable name: symbol that is user-variable-p.
  834. x -- Lisp expression read but not evaluated.
  835. X -- Lisp expression read and evaluated.
  836. z -- Coding system. (Always nil if no Mule support.)
  837. Z -- Coding system, nil if no prefix arg. (Always nil if no Mule support.)
  838. In addition, if the string begins with `*'
  839.  then an error is signaled if the buffer is read-only.
  840.  This happens before reading any arguments.
  841. If the string begins with `@', then the window the mouse is over is selected
  842.  before anything else is done.
  843. If the string begins with `_', then this command will not cause the region
  844.  to be deactivated when it completes; that is, `zmacs-region-stays' will be
  845.  set to t when the command exits successfully.
  846. You may use any of `@', `*' and `_' at the beginning of the string;
  847.  they are processed in the order that they appear.Fcall-interactively
  848. Call FUNCTION, reading args according to its interactive calling specs.
  849. Return the value FUNCTION returns.
  850. The function contains a specification of how to do the argument reading.
  851. In the case of user-defined functions, this is specified by placing a call
  852. to the function `interactive' at the top level of the function body.
  853. See `interactive'.
  854.  
  855. If optional second arg RECORD-FLAG is the symbol `lambda', the interactive
  856. calling arguments for FUNCTION are read and returned as a list,
  857. but the function is not called on them.
  858.  
  859. If RECORD-FLAG is `t' then unconditionally put this command in the
  860. command-history.  Otherwise, this is done only if an arg is read using
  861. the minibuffer.
  862.  
  863. The argument KEYS specifies the value to use instead of (this-command-keys)
  864. when reading the arguments.
  865.  
  866. arguments: (FUNCTION &optional RECORD-FLAG KEYS)
  867. Fprefix-numeric-value
  868. Return numeric meaning of raw prefix argument ARG.
  869. A raw prefix argument is what you get from `(interactive "P")'.
  870. Its numeric meaning is what you would get from `(interactive "p")'.
  871.  
  872. arguments: (RAW)
  873. Vcurrent-prefix-arg
  874. The value of the prefix argument for this editing command.
  875. It may be a number, or the symbol `-' for just a minus sign as arg,
  876. or a list whose car is a number for just one or more C-U's
  877. or nil if no argument has been specified.
  878. This is what `(interactive "P")' returns.Vcommand-history
  879. List of recent commands that read arguments from terminal.
  880. Each command is represented as a form to evaluate.Vcommand-debug-status
  881. Debugging status of current interactive command.
  882. Bound each time `call-interactively' is called;
  883. may be set by the debugger as a reminder for itself.Fcall-process-internal
  884. Call PROGRAM synchronously in separate process, with coding-system specified.
  885. Arguments are
  886.  (PROGRAM &optional INFILE BUFFER DISPLAY &rest ARGS).
  887. The program's input comes from file INFILE (nil means `/dev/null').
  888. Insert output in BUFFER before point; t means current buffer;
  889.  nil for BUFFER means discard it; 0 means discard and don't wait.
  890. BUFFER can also have the form (REAL-BUFFER STDERR-FILE); in that case,
  891. REAL-BUFFER says what to do with standard output, as above,
  892. while STDERR-FILE says what to do with standard error in the child.
  893. STDERR-FILE may be nil (discard standard error output),
  894. t (mix it with ordinary output), or a file name string.
  895.  
  896. Fourth arg DISPLAY non-nil means redisplay buffer as output is inserted.
  897. Remaining arguments are strings passed as command arguments to PROGRAM.
  898.  
  899. If BUFFER is 0, `call-process' returns immediately with value nil.
  900. Otherwise it waits for PROGRAM to terminate and returns a numeric exit status
  901.  or a signal description string.
  902. If you quit, the process is killed with SIGINT, or SIGKILL if you
  903.  quit again.Fgetenv
  904. Return the value of environment variable VAR, as a string.
  905. VAR is a string, the name of the variable.
  906. When invoked interactively, prints the value in the echo area.
  907.  
  908. arguments: (VAR &optional INTERACTIVEP)
  909. Vbinary-process-input
  910. *If non-nil then new subprocesses are assumed to take binary input.Vbinary-process-output
  911. *If non-nil then new subprocesses are assumed to produce binary output.Vshell-file-name
  912. *File name to load inferior shells from.
  913. Initialized from the SHELL environment variable.Vexec-path
  914. *List of directories to search programs to run in subprocesses.
  915. Each element is a string (directory name) or nil (try default directory).Vexec-directory
  916. Directory of architecture-dependent files that come with XEmacs,
  917. especially executable programs intended for XEmacs to invoke.Vdata-directory
  918. Directory of architecture-independent files that come with XEmacs,
  919. intended for XEmacs to use.
  920. Use of this variable in new code is almost never correct.  See the
  921. function `locate-data-directory' and the variable `data-directory-list'.Vdata-directory-list
  922. List of directories of architecture-independent files that come with XEmacs
  923. or were installed as packages, and are intended for XEmacs to use.Vsite-directory
  924. Directory of architecture-independent files that do not come with XEmacs,
  925. intended for XEmacs to use.Vdoc-directory
  926. Directory containing the DOC file that comes with XEmacs.
  927. This is usually the same as exec-directory.Vprefix-directory
  928. The default directory under which XEmacs is installed.Vprocess-environment
  929. List of environment variables for subprocesses to inherit.
  930. Each element should be a string of the form ENVVARNAME=VALUE.
  931. The environment which Emacs inherits is placed in this variable
  932. when Emacs starts.Vconfigure-info-directory
  933. For internal use by the build procedure only.
  934. This is the name of the directory in which the build procedure installed
  935. Emacs's info files; the default value for Info-default-directory-list
  936. includes this.Vinfopath-internal
  937. The configured initial value of Info-default-directory-list.Fupcase
  938. Convert argument to upper case and return that.
  939. The argument may be a character or string.  The result has the same type.
  940. The argument object is not altered--the value is a copy.
  941. See also `capitalize', `downcase' and `upcase-initials'.
  942. Optional second arg BUFFER specifies which buffer's case tables to use,
  943.  and defaults to the current buffer.
  944.  
  945. arguments: (OBJ &optional BUFFER)
  946. Fdowncase
  947. Convert argument to lower case and return that.
  948. The argument may be a character or string.  The result has the same type.
  949. The argument object is not altered--the value is a copy.
  950. Optional second arg BUFFER specifies which buffer's case tables to use,
  951.  and defaults to the current buffer.
  952.  
  953. arguments: (OBJ &optional BUFFER)
  954. Fcapitalize
  955. Convert argument to capitalized form and return that.
  956. This means that each word's first character is upper case
  957. and the rest is lower case.
  958. The argument may be a character or string.  The result has the same type.
  959. The argument object is not altered--the value is a copy.
  960. Optional second arg BUFFER specifies which buffer's case tables to use,
  961.  and defaults to the current buffer.
  962.  
  963. arguments: (OBJ &optional BUFFER)
  964. Fupcase-initials
  965. Convert the initial of each word in the argument to upper case.
  966. Do not change the other letters of each word.
  967. The argument may be a character or string.  The result has the same type.
  968. The argument object is not altered--the value is a copy.
  969. Optional second arg BUFFER specifies which buffer's case tables to use,
  970.  and defaults to the current buffer.
  971.  
  972. arguments: (OBJ &optional BUFFER)
  973. Fupcase-region
  974. Convert the region to upper case.  In programs, wants two arguments.
  975. These arguments specify the starting and ending character numbers of
  976.  the region to operate on.  When used as a command, the text between
  977.  point and the mark is operated on.
  978. See also `capitalize-region'.
  979. Optional third arg BUFFER defaults to the current buffer.
  980.  
  981. arguments: (B E &optional BUFFER)
  982. Fdowncase-region
  983. Convert the region to lower case.  In programs, wants two arguments.
  984. These arguments specify the starting and ending character numbers of
  985.  the region to operate on.  When used as a command, the text between
  986.  point and the mark is operated on.
  987. Optional third arg BUFFER defaults to the current buffer.
  988.  
  989. arguments: (B E &optional BUFFER)
  990. Fcapitalize-region
  991. Convert the region to capitalized form.
  992. Capitalized form means each word's first character is upper case
  993.  and the rest of it is lower case.
  994. In programs, give two arguments, the starting and ending
  995.  character positions to operate on.
  996. Optional third arg BUFFER defaults to the current buffer.
  997.  
  998. arguments: (B E &optional BUFFER)
  999. Fupcase-initials-region
  1000. Upcase the initial of each word in the region.
  1001. Subsequent letters of each word are not changed.
  1002. In programs, give two arguments, the starting and ending
  1003.  character positions to operate on.
  1004. Optional third arg BUFFER defaults to the current buffer.
  1005.  
  1006. arguments: (B E &optional BUFFER)
  1007. Fupcase-word
  1008. Convert following word (or ARG words) to upper case, moving over.
  1009. With negative argument, convert previous words but do not move.
  1010. See also `capitalize-word'.
  1011. Optional second arg BUFFER defaults to the current buffer.
  1012.  
  1013. arguments: (ARG &optional BUFFER)
  1014. Fdowncase-word
  1015. Convert following word (or ARG words) to lower case, moving over.
  1016. With negative argument, convert previous words but do not move.
  1017. Optional second arg BUFFER defaults to the current buffer.
  1018.  
  1019. arguments: (ARG &optional BUFFER)
  1020. Fcapitalize-word
  1021. Capitalize the following word (or ARG words), moving over.
  1022. This gives the word(s) a first character in upper case
  1023.  and the rest lower case.
  1024. With negative argument, capitalize previous words but do not move.
  1025. Optional second arg BUFFER defaults to the current buffer.
  1026.  
  1027. arguments: (ARG &optional BUFFER)
  1028. Fcase-table-p
  1029. Return t iff ARG is a case table.
  1030. See `set-case-table' for more information on these data structures.
  1031.  
  1032. arguments: (TABLE)
  1033. Fcurrent-case-table
  1034. Return the case table of BUFFER, which defaults to the current buffer.
  1035.  
  1036. arguments: (&optional BUFFER)
  1037. Fstandard-case-table
  1038. Return the standard case table.
  1039. This is the one used for new buffers.
  1040.  
  1041. arguments: ()
  1042. Fset-case-table
  1043. Select a new case table for the current buffer.
  1044. A case table is a list (DOWNCASE UPCASE CANONICALIZE EQUIVALENCES)
  1045.  where each element is either nil or a string of length 256.
  1046. DOWNCASE maps each character to its lower-case equivalent.
  1047. UPCASE maps each character to its upper-case equivalent;
  1048.  if lower and upper case characters are in 1-1 correspondence,
  1049.  you may use nil and the upcase table will be deduced from DOWNCASE.
  1050. CANONICALIZE maps each character to a canonical equivalent;
  1051.  any two characters that are related by case-conversion have the same
  1052.  canonical equivalent character; it may be nil, in which case it is
  1053.  deduced from DOWNCASE and UPCASE.
  1054. EQUIVALENCES is a map that cyclicly permutes each equivalence class
  1055.  (of characters with the same canonical equivalent); it may be nil,
  1056.  in which case it is deduced from CANONICALIZE.
  1057.  
  1058. BUG: Under XEmacs/Mule, translations to or from non-ASCII characters
  1059.  (this includes chars in the range 128 - 255) are ignored by
  1060.  the string/buffer-searching routines.  Thus, `case-fold-search'
  1061.  will not correctly conflate a-umlaut and A-umlaut even if the
  1062.  case tables call for this.
  1063.  
  1064. arguments: (TABLE)
  1065. Fset-standard-case-table
  1066. Select a new standard case table for new buffers.
  1067. See `set-case-table' for more info on case tables.
  1068.  
  1069. arguments: (TABLE)
  1070. Fchar-table-p
  1071. Return non-nil if OBJECT is a char table.
  1072.  
  1073. A char table is a table that maps characters (or ranges of characters)
  1074. to values.  Char tables are specialized for characters, only allowing
  1075. particular sorts of ranges to be assigned values.  Although this
  1076. loses in generality, it makes for extremely fast (constant-time)
  1077. lookups, and thus is feasible for applications that do an extremely
  1078. large number of lookups (e.g. scanning a buffer for a character in
  1079. a particular syntax, where a lookup in the syntax table must occur
  1080. once per character).
  1081.  
  1082. When Mule support exists, the types of ranges that can be assigned
  1083. values are
  1084.  
  1085. -- all characters
  1086. -- an entire charset
  1087. -- a single row in a two-octet charset
  1088. -- a single character
  1089.  
  1090. When Mule support is not present, the types of ranges that can be
  1091. assigned values are
  1092.  
  1093. -- all characters
  1094. -- a single character
  1095.  
  1096. To create a char table, use `make-char-table'.  To modify a char
  1097. table, use `put-char-table' or `remove-char-table'.  To retrieve the
  1098. value for a particular character, use `get-char-table'.  See also
  1099. `map-char-table', `clear-char-table', `copy-char-table',
  1100. `valid-char-table-type-p', `char-table-type-list', `valid-char-table-value-p',
  1101. and `check-char-table-value'.
  1102.  
  1103. arguments: (OBJECT)
  1104. Fchar-table-type-list
  1105. Return a list of the recognized char table types.
  1106. See `valid-char-table-type-p'.
  1107.  
  1108. arguments: ()
  1109. Fvalid-char-table-type-p
  1110. Return t if TYPE if a recognized char table type.
  1111.  
  1112. Each char table type is used for a different purpose and allows different
  1113. sorts of values.  The different char table types are
  1114.  
  1115. `category'
  1116.     Used for category tables, which specify the regexp categories
  1117.     that a character is in.  The valid values are nil or a
  1118.     bit vector of 95 elements.  Higher-level Lisp functions are
  1119.     provided for working with category tables.  Currently categories
  1120.     and category tables only exist when Mule support is present.
  1121. `char'
  1122.     A generalized char table, for mapping from one character to
  1123.     another.  Used for case tables, syntax matching tables,
  1124.     `keyboard-translate-table', etc.  The valid values are characters.
  1125. `generic'
  1126.         An even more generalized char table, for mapping from a
  1127.     character to anything.
  1128. `display'
  1129.     Used for display tables, which specify how a particular character
  1130.     is to appear when displayed.  #### Not yet implemented.
  1131. `syntax'
  1132.     Used for syntax tables, which specify the syntax of a particular
  1133.     character.  Higher-level Lisp functions are provided for
  1134.     working with syntax tables.  The valid values are integers.
  1135.  
  1136.  
  1137. arguments: (TYPE)
  1138. Fchar-table-type
  1139. Return the type of char table TABLE.
  1140. See `valid-char-table-type-p'.
  1141.  
  1142. arguments: (TABLE)
  1143. Freset-char-table
  1144. Reset a char table to its default state.
  1145.  
  1146. arguments: (TABLE)
  1147. Fmake-char-table
  1148. Make a new, empty char table of type TYPE.
  1149. Currently recognized types are 'char, 'category, 'display, 'generic,
  1150. and 'syntax.  See `valid-char-table-type-p'.
  1151.  
  1152. arguments: (TYPE)
  1153. Fcopy-char-table
  1154. Make a new char table which is a copy of OLD-TABLE.
  1155. It will contain the same values for the same characters and ranges
  1156. as OLD-TABLE.  The values will not themselves be copied.
  1157.  
  1158. arguments: (OLD-TABLE)
  1159. Fget-char-table
  1160. Find value for char CH in TABLE.
  1161.  
  1162. arguments: (CH TABLE)
  1163. Fget-range-char-table
  1164. Find value for a range in TABLE.
  1165. If there is more than one value, return MULTI (defaults to nil).
  1166.  
  1167. arguments: (RANGE TABLE &optional MULTI)
  1168. Fvalid-char-table-value-p
  1169. Return non-nil if VALUE is a valid value for CHAR-TABLE-TYPE.
  1170.  
  1171. arguments: (VALUE CHAR-TABLE-TYPE)
  1172. Fcheck-valid-char-table-value
  1173. Signal an error if VALUE is not a valid value for CHAR-TABLE-TYPE.
  1174.  
  1175. arguments: (VALUE CHAR-TABLE-TYPE)
  1176. Fput-char-table
  1177. Set the value for chars in RANGE to be VAL in TABLE.
  1178.  
  1179. RANGE specifies one or more characters to be affected and should be
  1180. one of the following:
  1181.  
  1182. -- t (all characters are affected)
  1183. -- A charset (only allowed when Mule support is present)
  1184. -- A vector of two elements: a two-octet charset and a row number
  1185.    (only allowed when Mule support is present)
  1186. -- A single character
  1187.  
  1188. VAL must be a value appropriate for the type of TABLE.
  1189. See `valid-char-table-type-p'.
  1190.  
  1191. arguments: (RANGE VAL TABLE)
  1192. Fmap-char-table
  1193. Map FUNCTION over entries in TABLE, calling it with two args,
  1194. each key and value in the table.
  1195.  
  1196. RANGE specifies a subrange to map over and is in the same format as
  1197. the RANGE argument to `put-range-table'.  If omitted or t, it defaults to
  1198. the entire table.
  1199.  
  1200. arguments: (FUNCTION TABLE &optional RANGE)
  1201. Fcategory-table-p
  1202. Return t if ARG is a category table.
  1203. A category table is a type of char table used for keeping track of
  1204. categories.  Categories are used for classifying characters for use
  1205. in regexps -- you can refer to a category rather than having to use
  1206. a complicated [] expression (and category lookups are significantly
  1207. faster).
  1208.  
  1209. There are 95 different categories available, one for each printable
  1210. character (including space) in the ASCII charset.  Each category
  1211. is designated by one such character, called a "category designator".
  1212. They are specified in a regexp using the syntax "\cX", where X is
  1213. a category designator.
  1214.  
  1215. A category table specifies, for each character, the categories that
  1216. the character is in.  Note that a character can be in more than one
  1217. category.  More specifically, a category table maps from a character
  1218. to either the value nil (meaning the character is in no categories)
  1219. or a 95-element bit vector, specifying for each of the 95 categories
  1220. whether the character is in that category.
  1221.  
  1222. Special Lisp functions are provided that abstract this, so you do not
  1223. have to directly manipulate bit vectors.
  1224.  
  1225. arguments: (OBJ)
  1226. Fcheck-category-at
  1227. Return t if category of a character at POS includes DESIGNATOR,
  1228. else return nil. Optional third arg specifies which buffer
  1229. (defaulting to current), and fourth specifies the CATEGORY-TABLE,
  1230. (defaulting to the buffer's category table).
  1231.  
  1232. arguments: (POS DESIGNATOR &optional BUFFER CATEGORY-TABLE)
  1233. Fchar-in-category-p
  1234. Return t if category of character CHR includes DESIGNATOR, else nil.
  1235. Optional third arg specifies the CATEGORY-TABLE to use,
  1236. which defaults to the system default table.
  1237.  
  1238. arguments: (CHR DESIGNATOR &optional CATEGORY-TABLE)
  1239. Fcategory-table
  1240. Return the current category table.
  1241. This is the one specified by the current buffer, or by BUFFER if it
  1242. is non-nil.
  1243.  
  1244. arguments: (&optional BUFFER)
  1245. Fstandard-category-table
  1246. Return the standard category table.
  1247. This is the one used for new buffers.
  1248.  
  1249. arguments: ()
  1250. Fcopy-category-table
  1251. Construct a new category table and return it.
  1252. It is a copy of the TABLE, which defaults to the standard category table.
  1253.  
  1254. arguments: (&optional TABLE)
  1255. Fset-category-table
  1256. Select a new category table for BUFFER.
  1257. One argument, a category table.
  1258. BUFFER defaults to the current buffer if omitted.
  1259.  
  1260. arguments: (TABLE &optional BUFFER)
  1261. Fcategory-designator-p
  1262. Return t if ARG is a category designator (a char in the range ' ' to '~').
  1263.  
  1264. arguments: (OBJ)
  1265. Fcategory-table-value-p
  1266. Return t if ARG is a category table value.
  1267. Valid values are nil or a bit vector of size 95.
  1268.  
  1269. arguments: (OBJ)
  1270. Freally-early-error-handler
  1271. You should almost certainly not be using this.
  1272.  
  1273. arguments: (X)
  1274. Frecursive-edit
  1275. Invoke the editor command loop recursively.
  1276. To get out of the recursive edit, a command can do `(throw 'exit nil)';
  1277. that tells this function to return.
  1278. Alternately, `(throw 'exit t)' makes this function signal an error.
  1279.  
  1280. arguments: ()
  1281. Fcommand-loop-1
  1282. Invoke the internals of the canonical editor command loop.
  1283. Don't call this unless you know what you're doing.
  1284.  
  1285. arguments: ()
  1286. Vcommand-loop-level
  1287. Number of recursive edits in progress.Vdisabled-command-hook
  1288. Value is called instead of any command that is disabled,
  1289. i.e. has a non-nil `disabled' property.Vleave-window-hook
  1290. Not yet implemented.Venter-window-hook
  1291. Not yet implemented.Vtop-level
  1292. Form to evaluate when Emacs starts up.
  1293. Useful to set before you dump a modified Emacs.Vcommand-loop
  1294. Function or one argument to call to read and process keyboard commands.
  1295. The passed argument specifies whether or not to handle errors.Fforward-char
  1296. Move point right ARG characters (left if ARG negative).
  1297. On reaching end of buffer, stop and signal error.
  1298. Error signaling is suppressed if `signal-error-on-buffer-boundary'
  1299. is nil.  If BUFFER is nil, the current buffer is assumed.
  1300.  
  1301. arguments: (&optional ARG BUFFER)
  1302. Fbackward-char
  1303. Move point left ARG characters (right if ARG negative).
  1304. On attempt to pass beginning or end of buffer, stop and signal error.
  1305. Error signaling is suppressed if `signal-error-on-buffer-boundary'
  1306. is nil.  If BUFFER is nil, the current buffer is assumed.
  1307.  
  1308. arguments: (&optional ARG BUFFER)
  1309. Fforward-line
  1310. Move ARG lines forward (backward if ARG is negative).
  1311. Precisely, if point is on line I, move to the start of line I + ARG.
  1312. If there isn't room, go as far as possible (no error).
  1313. Returns the count of lines left to move.  If moving forward,
  1314. that is ARG - number of lines moved; if backward, ARG + number moved.
  1315. With positive ARG, a non-empty line at the end counts as one line
  1316.   successfully moved (for the return value).
  1317. If BUFFER is nil, the current buffer is assumed.
  1318.  
  1319. arguments: (&optional ARG BUFFER)
  1320. Fpoint-at-bol
  1321. Return the character position of the first character on the current line.
  1322. With argument N not nil or 1, move forward N - 1 lines first.
  1323. If scan reaches end of buffer, return that position.
  1324. This function does not move point.
  1325.  
  1326. arguments: (&optional ARG BUFFER)
  1327. Fbeginning-of-line
  1328. Move point to beginning of current line.
  1329. With argument ARG not nil or 1, move forward ARG - 1 lines first.
  1330. If scan reaches end of buffer, stop there without error.
  1331. If BUFFER is nil, the current buffer is assumed.
  1332.  
  1333. arguments: (&optional ARG BUFFER)
  1334. Fpoint-at-eol
  1335. Return the character position of the last character on the current line.
  1336. With argument N not nil or 1, move forward N - 1 lines first.
  1337. If scan reaches end of buffer, return that position.
  1338. This function does not move point.
  1339.  
  1340. arguments: (&optional ARG BUFFER)
  1341. Fend-of-line
  1342. Move point to end of current line.
  1343. With argument ARG not nil or 1, move forward ARG - 1 lines first.
  1344. If scan reaches end of buffer, stop there without error.
  1345. If BUFFER is nil, the current buffer is assumed.
  1346.  
  1347. arguments: (&optional ARG BUFFER)
  1348. Fdelete-char
  1349. Delete the following ARG characters (previous, with negative arg).
  1350. Optional second arg KILLFLAG non-nil means kill instead (save in kill ring).
  1351. Interactively, ARG is the prefix arg, and KILLFLAG is set if
  1352. ARG was explicitly specified.
  1353.  
  1354. arguments: (ARG &optional KILLFLAG)
  1355. Fdelete-backward-char
  1356. Delete the previous ARG characters (following, with negative ARG).
  1357. Optional second arg KILLFLAG non-nil means kill instead (save in kill ring).
  1358. Interactively, ARG is the prefix arg, and KILLFLAG is set if
  1359. ARG was explicitly specified.
  1360.  
  1361. arguments: (ARG &optional KILLFLAG)
  1362. Fself-insert-command
  1363. Insert the character you type.
  1364. Whichever character you type to run this command is inserted.
  1365.  
  1366. arguments: (ARG)
  1367. Fself-insert-internal
  1368. Invoke `self-insert-command' as if CH is entered from keyboard.
  1369.  
  1370. arguments: (CH)
  1371. Vself-insert-face
  1372. If non-nil, set the face of the next self-inserting character to this.
  1373. See also `self-insert-face-command'.Vself-insert-face-command
  1374. This is the command that set up `self-insert-face'.
  1375. If `last-command' does not equal this value, we ignore `self-insert-face'.Vblink-paren-function
  1376. Function called, if non-nil, whenever a close parenthesis is inserted.
  1377. More precisely, a char with closeparen syntax is self-inserted.Vsignal-error-on-buffer-boundary
  1378. *t means beep when movement would take point past (point-min) or
  1379. (point-max).Fvalid-console-type-p
  1380. Given a CONSOLE-TYPE, return t if it is valid.
  1381. Valid types are 'x, 'tty, and 'stream.
  1382.  
  1383. arguments: (CONSOLE-TYPE)
  1384. Fconsole-type-list
  1385. Return a list of valid console types.
  1386.  
  1387. arguments: ()
  1388. Fcdfw-console
  1389. Given a console, device, frame, or window, return the associated console.
  1390. Return nil otherwise.
  1391.  
  1392. arguments: (OBJ)
  1393. Fselected-console
  1394. Return the console which is currently active.
  1395.  
  1396. arguments: ()
  1397. Fselect-console
  1398. Select the console CONSOLE.
  1399. Subsequent editing commands apply to its selected device, selected frame,
  1400. and selected window.  The selection of CONSOLE lasts until the next time
  1401. the user does something to select a different console, or until the next
  1402. time this function is called.
  1403.  
  1404. arguments: (CONSOLE)
  1405. Fconsolep
  1406. Return non-nil if OBJECT is a console.
  1407.  
  1408. arguments: (OBJECT)
  1409. Fconsole-live-p
  1410. Return non-nil if OBJECT is a console that has not been deleted.
  1411.  
  1412. arguments: (OBJECT)
  1413. Fconsole-type
  1414. Return the type of the specified console (e.g. `x' or `tty').
  1415. Value is `tty' for a tty console (a character-only terminal),
  1416. `x' for a console that is an X display,
  1417. `win32' for a console that is a Windows or Windows NT connection (not yet
  1418.   implemented),
  1419. `pc' for a console that is a direct-write MS-DOS connection (not yet
  1420.   implemented),
  1421. `stream' for a stream console (which acts like a stdio stream), and
  1422. `dead' for a deleted console.
  1423.  
  1424. arguments: (&optional CONSOLE)
  1425. Fconsole-name
  1426. Return the name of the specified console.
  1427.  
  1428. arguments: (&optional CONSOLE)
  1429. Fconsole-connection
  1430. Return the connection of the specified console.
  1431. CONSOLE defaults to the selected console if omitted.
  1432.  
  1433. arguments: (&optional CONSOLE)
  1434. Ffind-console
  1435. Look for an existing console attached to connection CONNECTION.
  1436. Return the console if found; otherwise, return nil.
  1437.  
  1438. If TYPE is specified, only return consoles of that type; otherwise,
  1439. return consoles of any type. (It is possible, although unlikely,
  1440. that two consoles of different types could have the same connection
  1441. name; in such a case, the first console found is returned.)
  1442.  
  1443. arguments: (CONNECTION &optional TYPE)
  1444. Fget-console
  1445. Look for an existing console attached to connection CONNECTION.
  1446. Return the console if found; otherwise, signal an error.
  1447.  
  1448. If TYPE is specified, only return consoles of that type; otherwise,
  1449. return consoles of any type. (It is possible, although unlikely,
  1450. that two consoles of different types could have the same connection
  1451. name; in such a case, the first console found is returned.)
  1452.  
  1453. arguments: (CONNECTION &optional TYPE)
  1454. Fdelete-console
  1455. Delete CONSOLE, permanently eliminating it from use.
  1456. Normally, you cannot delete the last non-minibuffer-only frame (you must
  1457. use `save-buffers-kill-emacs' or `kill-emacs').  However, if optional
  1458. second argument FORCE is non-nil, you can delete the last frame. (This
  1459. will automatically call `save-buffers-kill-emacs'.)
  1460.  
  1461. arguments: (CONSOLE &optional FORCE)
  1462. Fconsole-list
  1463. Return a list of all consoles.
  1464.  
  1465. arguments: ()
  1466. Fconsole-device-list
  1467. Return a list of all devices on CONSOLE.
  1468. If CONSOLE is nil, the selected console will be used.
  1469.  
  1470. arguments: (&optional CONSOLE)
  1471. Fconsole-enable-input
  1472. Enable input on console CONSOLE.
  1473.  
  1474. arguments: (CONSOLE)
  1475. Fconsole-disable-input
  1476. Disable input on console CONSOLE.
  1477.  
  1478. arguments: (CONSOLE)
  1479. Fconsole-on-window-system-p
  1480. Return non-nil if this console is on a window system.
  1481. This generally means that there is support for the mouse, the menubar,
  1482. the toolbar, glyphs, etc.
  1483.  
  1484. arguments: (&optional CONSOLE)
  1485. Fsuspend-emacs
  1486. Stop Emacs and return to superior process.  You can resume later.
  1487. On systems that don't have job control, run a subshell instead.
  1488.  
  1489. If optional arg STUFFSTRING is non-nil, its characters are stuffed
  1490. to be read as terminal input by Emacs's superior shell.
  1491.  
  1492. Before suspending, run the normal hook `suspend-hook'.
  1493. After resumption run the normal hook `suspend-resume-hook'.
  1494.  
  1495. Some operating systems cannot stop the Emacs process and resume it later.
  1496. On such systems, Emacs will start a subshell and wait for it to exit.
  1497.  
  1498. arguments: (&optional STUFFSTRING)
  1499. Fsuspend-console
  1500. Suspend a console.  For tty consoles, it sends a signal to suspend
  1501. the process in charge of the tty, and removes the devices and
  1502. frames of that console from the display.
  1503.  
  1504. If optional arg CONSOLE is non-nil, it is the console to be suspended.
  1505. Otherwise it is assumed to be the selected console.
  1506.  
  1507. Some operating systems cannot stop processes and resume them later.
  1508. On such systems, who knows what will happen.
  1509.  
  1510. arguments: (&optional CONSOLE)
  1511. Fresume-console
  1512. Re-initialize a previously suspended console.  For tty consoles,
  1513. do stuff to the tty to make it sane again.
  1514.  
  1515. arguments: (CONSOLE)
  1516. Fset-input-mode
  1517. Set mode of reading keyboard input.
  1518. First arg is ignored, for backward compatibility.
  1519. Second arg FLOW non-nil means use ^S/^Q flow control for output to terminal
  1520.  (no effect except in CBREAK mode).
  1521. Third arg META t means accept 8-bit input (for a Meta key).
  1522.  META nil means ignore the top bit, on the assumption it is parity.
  1523.  Otherwise, accept 8-bit input and don't use the top bit for Meta.
  1524. First three arguments only apply to TTY consoles.
  1525. Optional fourth arg QUIT if non-nil specifies character to use for quitting.
  1526. Optional fifth arg CONSOLE specifies console to make changes to; nil means
  1527.  the selected console.
  1528. See also `current-input-mode'.
  1529.  
  1530. arguments: (IGNORED FLOW META &optional QUIT CONSOLE)
  1531. Fcurrent-input-mode
  1532. Return information about the way Emacs currently reads keyboard input.
  1533. Optional arg CONSOLE specifies console to return information about; nil means
  1534.  the selected console.
  1535. The value is a list of the form (nil FLOW META QUIT), where
  1536.   FLOW is non-nil if Emacs uses ^S/^Q flow control for output to the
  1537.     terminal; this does not apply if Emacs uses interrupt-driven input.
  1538.   META is t if accepting 8-bit input with 8th bit as Meta flag.
  1539.     META nil means ignoring the top bit, on the assumption it is parity.
  1540.     META is neither t nor nil if accepting 8-bit input and using
  1541.     all 8 bits as the character code.
  1542.   QUIT is the character Emacs currently uses to quit.
  1543. FLOW, and META are only meaningful for TTY consoles.
  1544. The elements of this list correspond to the arguments of
  1545. `set-input-mode'.
  1546.  
  1547. arguments: (&optional CONSOLE)
  1548. Vcreate-console-hook
  1549. Function or functions to call when a console is created.
  1550. One argument, the newly-created console.
  1551. This is called after the first frame has been created, but before
  1552.   calling the `create-device-hook' or `create-frame-hook'.
  1553. Note that in general the console will not be selected.Vdelete-console-hook
  1554. Function or functions to call when a console is deleted.
  1555. One argument, the to-be-deleted console.Vdefault-function-key-map
  1556. Default value of `function-key-map' for consoles that don't override it.
  1557. This is the same as (default-value 'function-key-map).Vfunction-key-map
  1558. Keymap mapping ASCII function key sequences onto their preferred forms.
  1559. This allows Emacs to recognize function keys sent from ASCII
  1560. terminals at any point in a key sequence.
  1561.  
  1562. The `read-key-sequence' function replaces any subsequence bound by
  1563. `function-key-map' with its binding.  More precisely, when the active
  1564. keymaps have no binding for the current key sequence but
  1565. `function-key-map' binds a suffix of the sequence to a vector or string,
  1566. `read-key-sequence' replaces the matching suffix with its binding, and
  1567. continues with the new sequence.
  1568.  
  1569. The events that come from bindings in `function-key-map' are not
  1570. themselves looked up in `function-key-map'.
  1571.  
  1572. For example, suppose `function-key-map' binds `ESC O P' to [f1].
  1573. Typing `ESC O P' to `read-key-sequence' would return
  1574. [#<keypress-event f1>].  Typing `C-x ESC O P' would return
  1575. [#<keypress-event control-X> #<keypress-event f1>].  If [f1]
  1576. were a prefix key, typing `ESC O P x' would return
  1577. [#<keypress-event f1> #<keypress-event x>].Vtty-erase-char
  1578. The ERASE character as set by the user with stty.
  1579. When this value cannot be determined or would be meaningless (on non-TTY
  1580. consoles, for example), it is set to nil.Vdefining-kbd-macro
  1581. Non-nil while a console macro is being defined.  Don't set this!Vlast-kbd-macro
  1582. Last kbd macro defined, as a vector of events; nil if none defined.Vprefix-arg
  1583. The value of the prefix argument for the next editing command.
  1584. It may be a number, or the symbol `-' for just a minus sign as arg,
  1585. or a list whose car is a number for just one or more C-U's
  1586. or nil if no argument has been specified.
  1587.  
  1588. You cannot examine this variable to find the argument for this command
  1589. since it has been set to nil by the time you can look.
  1590. Instead, you should use the variable `current-prefix-arg', although
  1591. normally commands can get this prefix argument with (interactive "P").Vdefault-minibuffer-frame
  1592. Minibufferless frames use this frame's minibuffer.
  1593.  
  1594. Emacs cannot create minibufferless frames unless this is set to an
  1595. appropriate surrogate.
  1596.  
  1597. XEmacs consults this variable only when creating minibufferless
  1598. frames; once the frame is created, it sticks with its assigned
  1599. minibuffer, no matter what this variable is set to.  This means that
  1600. this variable doesn't necessarily say anything meaningful about the
  1601. current set of frames, or where the minibuffer is currently being
  1602. displayed.Voverriding-terminal-local-map
  1603. Keymap that overrides all other local keymaps, for the selected console only.
  1604. If this variable is non-nil, it is used as a keymap instead of the
  1605. buffer's local map, and the minor mode keymaps and text property keymaps.Vterminal-console
  1606. The initial console-object, which represents XEmacs' stdout.Vterminal-device
  1607. The initial device-object, which represents XEmacs' stdout.Vterminal-frame
  1608. The initial frame-object, which represents XEmacs' stdout.Fwrong-type-argument
  1609. Signal an error until the correct type value is given by the user.
  1610. This function loops, signalling a continuable `wrong-type-argument' error
  1611. with PREDICATE and VALUE as the data associated with the error and then
  1612. calling PREDICATE on the returned value, until the value gotten satisfies
  1613. PREDICATE.  At that point, the gotten value is returned.
  1614.  
  1615. arguments: (PREDICATE VALUE)
  1616. Feq
  1617. T if the two args are the same Lisp object.
  1618.  
  1619. arguments: (OBJ1 OBJ2)
  1620. Fold-eq
  1621. T if the two args are (in most cases) the same Lisp object.
  1622.  
  1623. Special kludge: A character is considered `old-eq' to its equivalent integer
  1624. even though they are not the same object and are in fact of different
  1625. types.  This is ABSOLUTELY AND UTTERLY HORRENDOUS but is necessary to
  1626. preserve byte-code compatibility with v19.  This kludge is known as the
  1627. "char-to-int confoundance disease" and appears in a number of other
  1628. functions with `old-foo' equivalents.
  1629.  
  1630. Do not use this function!
  1631.  
  1632. arguments: (OBJ1 OBJ2)
  1633. Fnull
  1634. T if OBJECT is nil.
  1635.  
  1636. arguments: (OBJECT)
  1637. Fconsp
  1638. T if OBJECT is a cons cell.
  1639.  
  1640. arguments: (OBJECT)
  1641. Fatom
  1642. T if OBJECT is not a cons cell.  This includes nil.
  1643.  
  1644. arguments: (OBJECT)
  1645. Flistp
  1646. T if OBJECT is a list.  This includes nil.
  1647.  
  1648. arguments: (OBJECT)
  1649. Fnlistp
  1650. T if OBJECT is not a list.  Lists include nil.
  1651.  
  1652. arguments: (OBJECT)
  1653. Fsymbolp
  1654. T if OBJECT is a symbol.
  1655.  
  1656. arguments: (OBJECT)
  1657. Fkeywordp
  1658. T if OBJECT is a keyword.
  1659.  
  1660. arguments: (OBJECT)
  1661. Fvectorp
  1662. T if OBJECT is a vector.
  1663.  
  1664. arguments: (OBJECT)
  1665. Fbit-vector-p
  1666. T if OBJECT is a bit vector.
  1667.  
  1668. arguments: (OBJECT)
  1669. Fstringp
  1670. T if OBJECT is a string.
  1671.  
  1672. arguments: (OBJECT)
  1673. Farrayp
  1674. T if OBJECT is an array (string, vector, or bit vector).
  1675.  
  1676. arguments: (OBJECT)
  1677. Fsequencep
  1678. T if OBJECT is a sequence (list or array).
  1679.  
  1680. arguments: (OBJECT)
  1681. Fmarkerp
  1682. T if OBJECT is a marker (editor pointer).
  1683.  
  1684. arguments: (OBJECT)
  1685. Fsubrp
  1686. T if OBJECT is a built-in function.
  1687.  
  1688. arguments: (OBJECT)
  1689. Fsubr-min-args
  1690. Return minimum number of args built-in function SUBR may be called with.
  1691.  
  1692. arguments: (SUBR)
  1693. Fsubr-max-args
  1694. Return maximum number of args built-in function SUBR may be called with,
  1695. or nil if it takes an arbitrary number of arguments or is a special form.
  1696.  
  1697. arguments: (SUBR)
  1698. Fcompiled-function-p
  1699. t if OBJECT is a byte-compiled function object.
  1700.  
  1701. arguments: (OBJECT)
  1702. Fcharacterp
  1703. t if OBJECT is a character.
  1704. Unlike in XEmacs v19 and Emacs, a character is its own primitive type.
  1705. Any character can be converted into an equivalent integer using
  1706. `char-to-int'.  To convert the other way, use `int-to-char'; however,
  1707. only some integers can be converted into characters.  Such an integer
  1708. is called a `char-int'; see `char-int-p'.
  1709.  
  1710. Some functions that work on integers (e.g. the comparison functions
  1711. <, <=, =, /=, etc. and the arithmetic functions +, -, *, etc.)
  1712. accept characters and implicitly convert them into integers.  In
  1713. general, functions that work on characters also accept char-ints and
  1714. implicitly convert them into characters.  WARNING: Neither of these
  1715. behaviors is very desirable, and they are maintained for backward
  1716. compatibility with old E-Lisp programs that confounded characters and
  1717. integers willy-nilly.  These behaviors may change in the future; therefore,
  1718. do not rely on them.  Instead, use the character-specific functions such
  1719. as `char='.
  1720.  
  1721. arguments: (OBJECT)
  1722. Fchar-to-int
  1723. Convert a character into an equivalent integer.
  1724. The resulting integer will always be non-negative.  The integers in
  1725. the range 0 - 255 map to characters as follows:
  1726.  
  1727. 0 - 31        Control set 0
  1728. 32 - 127    ASCII
  1729. 128 - 159    Control set 1
  1730. 160 - 255    Right half of ISO-8859-1
  1731.  
  1732. If support for Mule does not exist, these are the only valid character
  1733. values.  When Mule support exists, the values assigned to other characters
  1734. may vary depending on the particular version of XEmacs, the order in which
  1735. character sets were loaded, etc., and you should not depend on them.
  1736.  
  1737. arguments: (CH)
  1738. Fint-to-char
  1739. Convert an integer into the equivalent character.
  1740. Not all integers correspond to valid characters; use `char-int-p' to
  1741. determine whether this is the case.  If the integer cannot be converted,
  1742. nil is returned.
  1743.  
  1744. arguments: (INTEGER)
  1745. Fchar-int-p
  1746. t if OBJECT is an integer that can be converted into a character.
  1747. See `char-to-int'.
  1748.  
  1749. arguments: (OBJECT)
  1750. Fchar-or-char-int-p
  1751. t if OBJECT is a character or an integer that can be converted into one.
  1752.  
  1753. arguments: (OBJECT)
  1754. Fchar-or-string-p
  1755. t if OBJECT is a character (or a char-int) or a string.
  1756. It is semi-hateful that we allow a char-int here, as it goes against
  1757. the name of this function, but it makes the most sense considering the
  1758. other steps we take to maintain compatibility with the old character/integer
  1759. confoundedness in older versions of E-Lisp.
  1760.  
  1761. arguments: (OBJECT)
  1762. Fintegerp
  1763. t if OBJECT is an integer.
  1764.  
  1765. arguments: (OBJECT)
  1766. Finteger-or-marker-p
  1767. t if OBJECT is an integer or a marker (editor pointer).
  1768.  
  1769. arguments: (OBJECT)
  1770. Finteger-or-char-p
  1771. t if OBJECT is an integer or a character.
  1772.  
  1773. arguments: (OBJECT)
  1774. Finteger-char-or-marker-p
  1775. t if OBJECT is an integer, character or a marker (editor pointer).
  1776.  
  1777. arguments: (OBJECT)
  1778. Fnatnump
  1779. t if OBJECT is a nonnegative integer.
  1780.  
  1781. arguments: (OBJECT)
  1782. Fbitp
  1783. t if OBJECT is a bit (0 or 1).
  1784.  
  1785. arguments: (OBJECT)
  1786. Fnumberp
  1787. t if OBJECT is a number (floating point or integer).
  1788.  
  1789. arguments: (OBJECT)
  1790. Fnumber-or-marker-p
  1791. t if OBJECT is a number or a marker.
  1792.  
  1793. arguments: (OBJECT)
  1794. Fnumber-char-or-marker-p
  1795. t if OBJECT is a number, character or a marker.
  1796.  
  1797. arguments: (OBJECT)
  1798. Ffloatp
  1799. t if OBJECT is a floating point number.
  1800.  
  1801. arguments: (OBJECT)
  1802. Ftype-of
  1803. Return a symbol representing the type of OBJECT.
  1804.  
  1805. arguments: (OBJECT)
  1806. Fcar
  1807. Return the car of LIST.  If arg is nil, return nil.
  1808. Error if arg is not nil and not a cons cell.  See also `car-safe'.
  1809.  
  1810. arguments: (LIST)
  1811. Fcar-safe
  1812. Return the car of OBJECT if it is a cons cell, or else nil.
  1813.  
  1814. arguments: (OBJECT)
  1815. Fcdr
  1816. Return the cdr of LIST.  If arg is nil, return nil.
  1817. Error if arg is not nil and not a cons cell.  See also `cdr-safe'.
  1818.  
  1819. arguments: (LIST)
  1820. Fcdr-safe
  1821. Return the cdr of OBJECT if it is a cons cell, or else  nil.
  1822.  
  1823. arguments: (OBJECT)
  1824. Fsetcar
  1825. Set the car of CONSCELL to be NEWCAR.  Returns NEWCAR.
  1826.  
  1827. arguments: (CONSCELL NEWCAR)
  1828. Fsetcdr
  1829. Set the cdr of CONSCELL to be NEWCDR.  Returns NEWCDR.
  1830.  
  1831. arguments: (CONSCELL NEWCDR)
  1832. Findirect-function
  1833. Return the function at the end of OBJECT's function chain.
  1834. If OBJECT is a symbol, follow all function indirections and return
  1835. the final function binding.
  1836. If OBJECT is not a symbol, just return it.
  1837. Signal a void-function error if the final symbol is unbound.
  1838. Signal a cyclic-function-indirection error if there is a loop in the
  1839. function chain of symbols.
  1840.  
  1841. arguments: (OBJECT)
  1842. Faref
  1843. Return the element of ARRAY at index INDEX.
  1844. ARRAY may be a vector, bit vector, string, or byte-code object.
  1845. IDX starts at 0.
  1846.  
  1847. arguments: (ARRAY IDX)
  1848. Faset
  1849. Store into the element of ARRAY at index IDX the value NEWVAL.
  1850. ARRAY may be a vector, bit vector, or string.  IDX starts at 0.
  1851.  
  1852. arguments: (ARRAY IDX NEWVAL)
  1853. Fcompiled-function-instructions
  1854. Return the byte-opcode string of the compiled-function object.
  1855.  
  1856. arguments: (FUNCTION)
  1857. Fcompiled-function-constants
  1858. Return the constants vector of the compiled-function object.
  1859.  
  1860. arguments: (FUNCTION)
  1861. Fcompiled-function-stack-depth
  1862. Return the max stack depth of the compiled-function object.
  1863.  
  1864. arguments: (FUNCTION)
  1865. Fcompiled-function-arglist
  1866. Return the argument list of the compiled-function object.
  1867.  
  1868. arguments: (FUNCTION)
  1869. Fcompiled-function-interactive
  1870. Return the interactive spec of the compiled-function object, or nil.
  1871. If non-nil, the return value will be a list whose first element is
  1872. `interactive' and whose second element is the interactive spec.
  1873.  
  1874. arguments: (FUNCTION)
  1875. Fcompiled-function-doc-string
  1876. Return the doc string of the compiled-function object, if available.
  1877. Functions that had their doc strings snarfed into the DOC file will have
  1878. an integer returned instead of a string.
  1879.  
  1880. arguments: (FUNCTION)
  1881. Fcompiled-function-annotation
  1882. Return the annotation of the compiled-function object, or nil.
  1883. The annotation is a piece of information indicating where this
  1884. compiled-function object came from.  Generally this will be
  1885. a symbol naming a function; or a string naming a file, if the
  1886. compiled-function object was not defined in a function; or nil,
  1887. if the compiled-function object was not created as a result of
  1888. a `load'.
  1889.  
  1890. arguments: (FUNCTION)
  1891. Fcompiled-function-domain
  1892. Return the domain of the compiled-function object, or nil.
  1893. This is only meaningful if I18N3 was enabled when emacs was compiled.
  1894.  
  1895. arguments: (FUNCTION)
  1896. F=
  1897. T if two args, both numbers, characters or markers, are equal.
  1898.  
  1899. arguments: (NUM1 NUM2)
  1900. F<
  1901. T if first arg is less than second arg.
  1902. Both must be numbers, characters or markers.
  1903.  
  1904. arguments: (NUM1 NUM2)
  1905. F>
  1906. T if first arg is greater than second arg.
  1907. Both must be numbers, characters or markers.
  1908.  
  1909. arguments: (NUM1 NUM2)
  1910. F<=
  1911. T if first arg is less than or equal to second arg.
  1912. Both must be numbers, characters or markers.
  1913.  
  1914. arguments: (NUM1 NUM2)
  1915. F>=
  1916. T if first arg is greater than or equal to second arg.
  1917. Both must be numbers, characters or markers.
  1918.  
  1919. arguments: (NUM1 NUM2)
  1920. F/=
  1921. T if first arg is not equal to second arg.
  1922. Both must be numbers, characters or markers.
  1923.  
  1924. arguments: (NUM1 NUM2)
  1925. Fzerop
  1926. T if NUMBER is zero.
  1927.  
  1928. arguments: (NUMBER)
  1929. Fnumber-to-string
  1930. Convert NUM to a string by printing it in decimal.
  1931. Uses a minus sign if negative.
  1932. NUM may be an integer or a floating point number.
  1933.  
  1934. arguments: (NUM)
  1935. Fstring-to-number
  1936. Convert STRING to a number by parsing it as a decimal number.
  1937. This parses both integers and floating point numbers.
  1938. It ignores leading spaces and tabs.
  1939.  
  1940. If BASE, interpret STRING as a number in that base.  If BASE isn't
  1941. present, base 10 is used.  BASE must be between 2 and 16 (inclusive).
  1942. Floating point numbers always use base 10.
  1943.  
  1944. arguments: (STRING &optional BASE)
  1945. F+
  1946. Return sum of any number of arguments.
  1947. The arguments should all be numbers, characters or markers.F-
  1948. Negate number or subtract numbers, characters or markers.
  1949. With one arg, negates it.  With more than one arg,
  1950. subtracts all but the first from the first.F*
  1951. Return product of any number of arguments.
  1952. The arguments should all be numbers, characters or markers.F/
  1953. Return first argument divided by all the remaining arguments.
  1954. The arguments must be numbers, characters or markers.F%
  1955. Return remainder of first arg divided by second.
  1956. Both must be integers, characters or markers.
  1957.  
  1958. arguments: (NUM1 NUM2)
  1959. Fmod
  1960. Return X modulo Y.
  1961. The result falls between zero (inclusive) and Y (exclusive).
  1962. Both X and Y must be numbers, characters or markers.
  1963. If either argument is a float, a float will be returned.
  1964.  
  1965. arguments: (X Y)
  1966. Fmax
  1967. Return largest of all the arguments.
  1968. All arguments must be numbers, characters or markers.
  1969. The value is always a number; markers and characters are converted
  1970. to numbers.Fmin
  1971. Return smallest of all the arguments.
  1972. All arguments must be numbers, characters or markers.
  1973. The value is always a number; markers and characters are converted
  1974. to numbers.Flogand
  1975. Return bitwise-and of all the arguments.
  1976. Arguments may be integers, or markers or characters converted to integers.Flogior
  1977. Return bitwise-or of all the arguments.
  1978. Arguments may be integers, or markers or characters converted to integers.Flogxor
  1979. Return bitwise-exclusive-or of all the arguments.
  1980. Arguments may be integers, or markers or characters converted to integers.Fash
  1981. Return VALUE with its bits shifted left by COUNT.
  1982. If COUNT is negative, shifting is actually to the right.
  1983. In this case, the sign bit is duplicated.
  1984.  
  1985. arguments: (VALUE COUNT)
  1986. Flsh
  1987. Return VALUE with its bits shifted left by COUNT.
  1988. If COUNT is negative, shifting is actually to the right.
  1989. In this case, zeros are shifted in on the left.
  1990.  
  1991. arguments: (VALUE COUNT)
  1992. F1+
  1993. Return NUMBER plus one.  NUMBER may be a number or a marker.
  1994. Markers and characters are converted to integers.
  1995.  
  1996. arguments: (NUMBER)
  1997. F1-
  1998. Return NUMBER minus one.  NUMBER may be a number or a marker.
  1999. Markers and characters are converted to integers.
  2000.  
  2001. arguments: (NUMBER)
  2002. Flognot
  2003. Return the bitwise complement of NUMBER.  NUMBER must be an integer.
  2004.  
  2005. arguments: (NUMBER)
  2006. Fweak-list-p
  2007. Return non-nil if OBJECT is a weak list.
  2008.  
  2009. arguments: (OBJECT)
  2010. Fmake-weak-list
  2011. Create a new weak list.
  2012. A weak list object is an object that contains a list.  This list behaves
  2013. like any other list except that its elements do not count towards
  2014. garbage collection -- if the only pointer to an object in inside a weak
  2015. list (other than pointers in similar objects such as weak hash tables),
  2016. the object is garbage collected and automatically removed from the list.
  2017. This is used internally, for example, to manage the list holding the
  2018. children of an extent -- an extent that is unused but has a parent will
  2019. still be reclaimed, and will automatically be removed from its parent's
  2020. list of children.
  2021.  
  2022. Optional argument TYPE specifies the type of the weak list, and defaults
  2023. to `simple'.  Recognized types are
  2024.  
  2025. `simple'    Objects in the list disappear if not pointed to.
  2026. `assoc'        Objects in the list disappear if they are conses
  2027.         and either the car or the cdr of the cons is not
  2028.         pointed to.
  2029. `key-assoc'    Objects in the list disappear if they are conses
  2030.         and the car is not pointed to.
  2031. `value-assoc'    Objects in the list disappear if they are conses
  2032.         and the cdr is not pointed to.
  2033.  
  2034. arguments: (&optional TYPE)
  2035. Fweak-list-type
  2036. Return the type of the given weak-list object.
  2037.  
  2038. arguments: (WEAK)
  2039. Fweak-list-list
  2040. Return the list contained in a weak-list object.
  2041.  
  2042. arguments: (WEAK)
  2043. Fset-weak-list-list
  2044. Change the list contained in a weak-list object.
  2045.  
  2046. arguments: (WEAK NEW-LIST)
  2047. Vdebug-issue-ebola-notices
  2048. If non-nil, note when your code may be suffering from char-int confoundance.
  2049. That is to say, if XEmacs encounters a usage of `eq', `memq', `equal',
  2050. etc. where a int and a char with the same value are being compared,
  2051. it will issue a notice on stderr to this effect, along with a backtrace.
  2052. In such situations, the result would be different in XEmacs 19 versus
  2053. XEmacs 20, and you probably don't want this.
  2054.  
  2055. Note that in order to see these notices, you have to byte compile your
  2056. code under XEmacs 20 -- any code byte-compiled under XEmacs 19 will
  2057. have its chars and ints all confounded in the byte code, making it
  2058. impossible to accurately determine Ebola infection.Vdebug-ebola-backtrace-length
  2059. Length (in stack frames) of short backtrace printed out in Ebola notices.
  2060. See `debug-issue-ebola-notices'.Fvalid-device-class-p
  2061. Given a DEVICE-CLASS, return t if it is valid.
  2062. Valid classes are 'color, 'grayscale, and 'mono.
  2063.  
  2064. arguments: (DEVICE-CLASS)
  2065. Fdevice-class-list
  2066. Return a list of valid device classes.
  2067.  
  2068. arguments: ()
  2069. Fdfw-device
  2070. Given a device, frame, or window, return the associated device.
  2071. Return nil otherwise.
  2072.  
  2073. arguments: (OBJ)
  2074. Fselected-device
  2075. Return the device which is currently active.
  2076. If optional CONSOLE is non-nil, return the device that would be currently
  2077. active if CONSOLE were the selected console.
  2078.  
  2079. arguments: (&optional CONSOLE)
  2080. Fselect-device
  2081. Select the device DEVICE.
  2082. Subsequent editing commands apply to its console, selected frame,
  2083. and selected window.
  2084. The selection of DEVICE lasts until the next time the user does
  2085. something to select a different device, or until the next time this
  2086. function is called.
  2087.  
  2088. arguments: (DEVICE)
  2089. Fset-device-selected-frame
  2090. Set the selected frame of device object DEVICE to FRAME.
  2091. If DEVICE is nil, the selected device is used.
  2092. If DEVICE is the selected device, this makes FRAME the selected frame.
  2093.  
  2094. arguments: (DEVICE FRAME)
  2095. Fdevicep
  2096. Return non-nil if OBJECT is a device.
  2097.  
  2098. arguments: (OBJECT)
  2099. Fdevice-live-p
  2100. Return non-nil if OBJECT is a device that has not been deleted.
  2101.  
  2102. arguments: (OBJECT)
  2103. Fdevice-name
  2104. Return the name of the specified device.
  2105. DEVICE defaults to the selected device if omitted.
  2106.  
  2107. arguments: (&optional DEVICE)
  2108. Fdevice-connection
  2109. Return the connection of the specified device.
  2110. DEVICE defaults to the selected device if omitted.
  2111.  
  2112. arguments: (&optional DEVICE)
  2113. Fdevice-console
  2114. Return the console of the specified device.
  2115. DEVICE defaults to the selected device if omitted.
  2116.  
  2117. arguments: (&optional DEVICE)
  2118. Ffind-device
  2119. Look for an existing device attached to connection CONNECTION.
  2120. Return the device if found; otherwise, return nil.
  2121.  
  2122. If TYPE is specified, only return devices of that type; otherwise,
  2123. return devices of any type. (It is possible, although unlikely,
  2124. that two devices of different types could have the same connection
  2125. name; in such a case, the first device found is returned.)
  2126.  
  2127. arguments: (CONNECTION &optional TYPE)
  2128. Fget-device
  2129. Look for an existing device attached to connection CONNECTION.
  2130. Return the device if found; otherwise, signal an error.
  2131.  
  2132. If TYPE is specified, only return devices of that type; otherwise,
  2133. return devices of any type. (It is possible, although unlikely,
  2134. that two devices of different types could have the same connection
  2135. name; in such a case, the first device found is returned.)
  2136.  
  2137. arguments: (CONNECTION &optional TYPE)
  2138. Fmake-device
  2139. Create a new device of type TYPE, attached to connection CONNECTION.
  2140.  
  2141. The valid values for CONNECTION are device-specific; however,
  2142. CONNECTION is generally a string. (Specifically, for X devices,
  2143. CONNECTION should be a display specification such as "foo:0", and
  2144. for TTY devices, CONNECTION should be the filename of a TTY device
  2145. file, such as "/dev/ttyp4", or nil to refer to XEmacs' standard
  2146. input/output.)
  2147.  
  2148. PROPS, if specified, should be a plist of properties controlling
  2149. device creation.
  2150.  
  2151. If CONNECTION specifies an already-existing device connection, that
  2152. device is simply returned; no new device is created, and PROPS
  2153. have no effect.
  2154.  
  2155. arguments: (TYPE CONNECTION &optional PROPS)
  2156. Fdelete-device
  2157. Delete DEVICE, permanently eliminating it from use.
  2158. Normally, you cannot delete the last non-minibuffer-only frame (you must
  2159. use `save-buffers-kill-emacs' or `kill-emacs').  However, if optional
  2160. second argument FORCE is non-nil, you can delete the last frame. (This
  2161. will automatically call `save-buffers-kill-emacs'.)
  2162.  
  2163. arguments: (DEVICE &optional FORCE)
  2164. Fdevice-frame-list
  2165. Return a list of all frames on DEVICE.
  2166. If DEVICE is nil, the selected device will be used.
  2167.  
  2168. arguments: (&optional DEVICE)
  2169. Fdevice-class
  2170. Return the class (color behavior) of DEVICE.
  2171. This will be one of 'color, 'grayscale, or 'mono.
  2172.  
  2173. arguments: (&optional DEVICE)
  2174. Fset-device-class
  2175. Set the class (color behavior) of DEVICE.
  2176. CLASS should be one of 'color, 'grayscale, or 'mono.
  2177. This is only allowed on device such as TTY devices, where the color
  2178. behavior cannot necessarily be determined automatically.
  2179.  
  2180. arguments: (DEVICE CLASS)
  2181. Fdevice-pixel-width
  2182. Return the width in pixels of DEVICE, or nil if unknown.
  2183.  
  2184. arguments: (&optional DEVICE)
  2185. Fdevice-pixel-height
  2186. Return the height in pixels of DEVICE, or nil if unknown.
  2187.  
  2188. arguments: (&optional DEVICE)
  2189. Fdevice-mm-width
  2190. Return the width in millimeters of DEVICE, or nil if unknown.
  2191.  
  2192. arguments: (&optional DEVICE)
  2193. Fdevice-mm-height
  2194. Return the height in millimeters of DEVICE, or nil if unknown.
  2195.  
  2196. arguments: (&optional DEVICE)
  2197. Fdevice-bitplanes
  2198. Return the number of bitplanes of DEVICE, or nil if unknown.
  2199.  
  2200. arguments: (&optional DEVICE)
  2201. Fdevice-color-cells
  2202. Return the number of color cells of DEVICE, or nil if unknown.
  2203.  
  2204. arguments: (&optional DEVICE)
  2205. Fset-device-baud-rate
  2206. Set the output baud rate of DEVICE to RATE.
  2207. On most systems, changing this value will affect the amount of padding
  2208. and other strategic decisions made during redisplay.
  2209.  
  2210. arguments: (DEVICE RATE)
  2211. Fdevice-baud-rate
  2212. Return the output baud rate of DEVICE.
  2213.  
  2214. arguments: (&optional DEVICE)
  2215. Vcreate-device-hook
  2216. Function or functions to call when a device is created.
  2217. One argument, the newly-created device.
  2218. This is called after the first frame has been created, but before
  2219.   calling the `create-frame-hook'.
  2220. Note that in general the device will not be selected.Vdelete-device-hook
  2221. Function or functions to call when a device is deleted.
  2222. One argument, the to-be-deleted device.Fdirectory-files
  2223. Return a list of names of files in DIRECTORY.
  2224. There are four optional arguments:
  2225. If FULL is non-nil, absolute pathnames of the files are returned.
  2226. If MATCH is non-nil, only pathnames containing that regexp are returned.
  2227. If NOSORT is non-nil, the list is not sorted--its order is unpredictable.
  2228.  NOSORT is useful if you plan to sort the result yourself.
  2229. If FILES-ONLY is the symbol t, then only the "files" in the directory
  2230.  will be returned; subdirectories will be excluded.  If FILES-ONLY is not
  2231.  nil and not t, then only the subdirectories will be returned.  Otherwise,
  2232.  if FILES-ONLY is nil (the default) then both files and subdirectories will
  2233.  be returned.
  2234.  
  2235. arguments: (DIRNAME &optional FULL MATCH NOSORT FILES-ONLY)
  2236. Ffile-name-completion
  2237. Complete file name FILE in directory DIR.
  2238. Returns the longest string common to all filenames in DIR
  2239. that start with FILE.
  2240. If there is only one and FILE matches it exactly, returns t.
  2241. Returns nil if DIR contains no name starting with FILE.
  2242.  
  2243. Filenames which end with any member of `completion-ignored-extensions'
  2244. are not considered as possible completions for FILE unless there is no
  2245. other possible completion.  `completion-ignored-extensions' is not applied
  2246. to the names of directories.
  2247.  
  2248. arguments: (FILE DIRNAME)
  2249. Ffile-name-all-completions
  2250. Return a list of all completions of file name FILE in directory DIR.
  2251. These are all file names in directory DIR which begin with FILE.
  2252.  
  2253. Filenames which end with any member of `completion-ignored-extensions'
  2254. are not considered as possible completions for FILE unless there is no
  2255. other possible completion.  `completion-ignored-extensions' is not applied
  2256. to the names of directories.
  2257.  
  2258. arguments: (FILE DIRNAME)
  2259. Ffile-name-all-versions
  2260. Return a list of all versions of file name FILE in directory DIR.
  2261.  
  2262. arguments: (FILE DIRNAME)
  2263. Ffile-version-limit
  2264. Return the maximum number of versions allowed for FILE.
  2265. Returns nil if the file cannot be opened or if there is no version limit.
  2266.  
  2267. arguments: (FILENAME)
  2268. Ffile-attributes
  2269. Return a list of attributes of file FILENAME.
  2270. Value is nil if specified file cannot be opened.
  2271. Otherwise, list elements are:
  2272.  0. t for directory, string (name linked to) for symbolic link, or nil.
  2273.  1. Number of links to file.
  2274.  2. File uid.
  2275.  3. File gid.
  2276.  4. Last access time, as a list of two integers.
  2277.   First integer has high-order 16 bits of time, second has low 16 bits.
  2278.  5. Last modification time, likewise.
  2279.  6. Last status change time, likewise.
  2280.  7. Size in bytes. (-1, if number is out of range).
  2281.  8. File modes, as a string of ten letters or dashes as in ls -l.
  2282.  9. t iff file's gid would change if file were deleted and recreated.
  2283. 10. inode number.
  2284. 11. Device number.
  2285.  
  2286. If file does not exist, returns nil.
  2287.  
  2288. arguments: (FILENAME)
  2289. Vcompletion-ignored-extensions
  2290. *Completion ignores filenames ending in any string in this list.
  2291. This variable does not affect lists of possible completions,
  2292. but does affect the commands that actually do completions.
  2293. It is used by the functions `file-name-completion' and
  2294. `file-name-all-completions'.Fdocumentation
  2295. Return the documentation string of FUNCTION.
  2296. Unless a non-nil second argument is given, the
  2297. string is passed through `substitute-command-keys'.
  2298.  
  2299. arguments: (FUNCTION &optional RAW)
  2300. Fdocumentation-property
  2301. Return the documentation string that is SYMBOL's PROP property.
  2302. This is like `get', but it can refer to strings stored in the
  2303. `doc-directory/DOC' file; and if the value is a string, it is passed
  2304. through `substitute-command-keys'.  A non-nil third argument avoids this
  2305. translation.
  2306.  
  2307. arguments: (SYM PROP &optional RAW)
  2308. FSnarf-documentation
  2309. Used during Emacs initialization, before dumping runnable Emacs,
  2310. to find pointers to doc strings stored in `.../lib-src/DOC' and
  2311. record them in function definitions.
  2312. One arg, FILENAME, a string which does not include a directory.
  2313. The file is written to `../lib-src', and later found in `exec-directory'
  2314. when doc strings are referred to in the dumped Emacs.
  2315.  
  2316. arguments: (FILENAME)
  2317. FVerify-documentation
  2318. Used to make sure everything went well with Snarf-documentation.
  2319. Writes to stderr if not.
  2320.  
  2321. arguments: ()
  2322. Fsubstitute-command-keys
  2323. Substitute key descriptions for command names in STRING.
  2324. Return a new string which is STRING with substrings of the form \=\[COMMAND]
  2325. replaced by either:  a keystroke sequence that will invoke COMMAND,
  2326. or "M-x COMMAND" if COMMAND is not on any keys.
  2327. Substrings of the form \=\{MAPVAR} are replaced by summaries
  2328. (made by describe-bindings) of the value of MAPVAR, taken as a keymap.
  2329. Substrings of the form \=\<MAPVAR> specify to use the value of MAPVAR
  2330. as the keymap for future \=\[COMMAND] substrings.
  2331. \=\= quotes the following character and is discarded;
  2332. thus, \=\=\=\= puts \=\= into the output, and \=\=\=\[ puts \=\[ into the output.
  2333.  
  2334. arguments: (STR)
  2335. Vinternal-doc-file-name
  2336. Name of file containing documentation strings of built-in symbols.Fchar-to-string
  2337. Convert arg CH to a one-character string containing that character.
  2338.  
  2339. arguments: (CH)
  2340. Fstring-to-char
  2341. Convert arg STRING to a character, the first character of that string.
  2342. An empty string will return the constant `nil'.
  2343.  
  2344. arguments: (STR)
  2345. Fpoint
  2346. Return value of point, as an integer.
  2347. Beginning of buffer is position (point-min).
  2348. If BUFFER is nil, the current buffer is assumed.
  2349.  
  2350. arguments: (&optional BUFFER)
  2351. Fpoint-marker
  2352. Return value of point, as a marker object.
  2353. This marker is a copy; you may modify it with reckless abandon.
  2354. If optional argument DONT-COPY-P is non-nil, then it returns the real
  2355. point-marker; modifying the position of this marker will move point.
  2356. It is illegal to change the buffer of it, or make it point nowhere.
  2357. If BUFFER is nil, the current buffer is assumed.
  2358.  
  2359. arguments: (&optional DONT-COPY-P BUFFER)
  2360. Fgoto-char
  2361. Set point to POSITION, a number or marker.
  2362. Beginning of buffer is position (point-min), end is (point-max).
  2363. If BUFFER is nil, the current buffer is assumed.
  2364. Return value of POSITION, as an integer.
  2365.  
  2366. arguments: (POSITION &optional BUFFER)
  2367. Fregion-beginning
  2368. Return position of beginning of region in BUFFER, as an integer.
  2369. If BUFFER is nil, the current buffer is assumed.
  2370.  
  2371. arguments: (&optional BUFFER)
  2372. Fregion-end
  2373. Return position of end of region in BUFFER, as an integer.
  2374. If BUFFER is nil, the current buffer is assumed.
  2375.  
  2376. arguments: (&optional BUFFER)
  2377. Fmark-marker
  2378. Return this buffer's mark, as a marker object.
  2379. If `zmacs-regions' is true, then this returns nil unless the region is
  2380. currently in the active (highlighted) state.  If optional argument FORCE
  2381. is t, this returns the mark (if there is one) regardless of the zmacs-region
  2382. state.  You should *generally* not use the mark unless the region is active,
  2383. if the user has expressed a preference for the zmacs-region model.
  2384. Watch out!  Moving this marker changes the mark position.
  2385. If you set the marker not to point anywhere, the buffer will have no mark.
  2386. If BUFFER is nil, the current buffer is assumed.
  2387.  
  2388. arguments: (&optional FORCE BUFFER)
  2389. Fsave-excursion
  2390. Save point, mark, and current buffer; execute BODY; restore those things.
  2391. Executes BODY just like `progn'.
  2392. The values of point, mark and the current buffer are restored
  2393. even in case of abnormal exit (throw or error).Fsave-current-buffer
  2394. Save the current buffer; execute BODY; restore the current buffer.
  2395. Executes BODY just like `progn'.Fbuffer-size
  2396. Return the number of characters in BUFFER.
  2397. If BUFFER is nil, the current buffer is assumed.
  2398.  
  2399. arguments: (&optional BUFFER)
  2400. Fpoint-min
  2401. Return the minimum permissible value of point in BUFFER.
  2402. This is 1, unless narrowing (a buffer restriction) is in effect.
  2403. If BUFFER is nil, the current buffer is assumed.
  2404.  
  2405. arguments: (&optional BUFFER)
  2406. Fpoint-min-marker
  2407. Return a marker to the minimum permissible value of point in BUFFER.
  2408. This is the beginning, unless narrowing (a buffer restriction) is in effect.
  2409. If BUFFER is nil, the current buffer is assumed.
  2410.  
  2411. arguments: (&optional BUFFER)
  2412. Fpoint-max
  2413. Return the maximum permissible value of point in BUFFER.
  2414. This is (1+ (buffer-size)), unless narrowing (a buffer restriction)
  2415. is in effect, in which case it is less.
  2416. If BUFFER is nil, the current buffer is assumed.
  2417.  
  2418. arguments: (&optional BUFFER)
  2419. Fpoint-max-marker
  2420. Return a marker to the maximum permissible value of point BUFFER.
  2421. This is (1+ (buffer-size)), unless narrowing (a buffer restriction)
  2422. is in effect, in which case it is less.
  2423. If BUFFER is nil, the current buffer is assumed.
  2424.  
  2425. arguments: (&optional BUFFER)
  2426. Ffollowing-char
  2427. Return the character following point.
  2428. At the end of the buffer or accessible region, return 0.
  2429. If BUFFER is nil, the current buffer is assumed.
  2430.  
  2431. arguments: (&optional BUFFER)
  2432. Fpreceding-char
  2433. Return the character preceding point.
  2434. At the beginning of the buffer or accessible region, return 0.
  2435. If BUFFER is nil, the current buffer is assumed.
  2436.  
  2437. arguments: (&optional BUFFER)
  2438. Fbobp
  2439. Return T if point is at the beginning of the buffer.
  2440. If the buffer is narrowed, this means the beginning of the narrowed part.
  2441. If BUFFER is nil, the current buffer is assumed.
  2442.  
  2443. arguments: (&optional BUFFER)
  2444. Feobp
  2445. Return T if point is at the end of the buffer.
  2446. If the buffer is narrowed, this means the end of the narrowed part.
  2447. If BUFFER is nil, the current buffer is assumed.
  2448.  
  2449. arguments: (&optional BUFFER)
  2450. Fbolp
  2451. Return T if point is at the beginning of a line.
  2452. If BUFFER is nil, the current buffer is assumed.
  2453.  
  2454. arguments: (&optional BUFFER)
  2455. Feolp
  2456. Return T if point is at the end of a line.
  2457. `End of a line' includes point being at the end of the buffer.
  2458. If BUFFER is nil, the current buffer is assumed.
  2459.  
  2460. arguments: (&optional BUFFER)
  2461. Fchar-after
  2462. Return character in BUFFER at position POS.
  2463. POS is an integer or a buffer pointer.
  2464. If POS is out of range, the value is nil.
  2465. If BUFFER is nil, the current buffer is assumed.
  2466. if POS is nil, the value of point is assumed.
  2467.  
  2468. arguments: (&optional POS BUFFER)
  2469. Fchar-before
  2470. Return character in BUFFER before position POS.
  2471. POS is an integer or a buffer pointer.
  2472. If POS is out of range, the value is nil.
  2473. If BUFFER is nil, the current buffer is assumed.
  2474. if POS is nil, the value of point is assumed.
  2475.  
  2476. arguments: (&optional POS BUFFER)
  2477. Fuser-login-name
  2478. Return the name under which the user logged in, as a string.
  2479. This is based on the effective uid, not the real uid.
  2480. Also, if the environment variable LOGNAME or USER is set,
  2481. that determines the value of this function.
  2482. If the optional argument UID is present, then environment variables are
  2483. ignored and this function returns the login name for that UID, or nil.
  2484.  
  2485. arguments: (&optional UID)
  2486. Fuser-real-login-name
  2487. Return the name of the user's real uid, as a string.
  2488. This ignores the environment variables LOGNAME and USER, so it differs from
  2489. `user-login-name' when running under `su'.
  2490.  
  2491. arguments: ()
  2492. Fuser-uid
  2493. Return the effective uid of Emacs, as an integer.
  2494.  
  2495. arguments: ()
  2496. Fuser-real-uid
  2497. Return the real uid of Emacs, as an integer.
  2498.  
  2499. arguments: ()
  2500. Fuser-full-name
  2501. Return the full name of the user logged in, as a string.
  2502. If the optional argument USER is given, then the full name for that
  2503. user is returned, or nil.  USER may be either a login name or a uid.
  2504.  
  2505. arguments: (&optional USER)
  2506. Fsystem-name
  2507. Return the name of the machine you are running on, as a string.
  2508.  
  2509. arguments: ()
  2510. Femacs-pid
  2511. Return the process ID of Emacs, as an integer.
  2512.  
  2513. arguments: ()
  2514. Fcurrent-time
  2515. Return the current time, as the number of seconds since 1970-01-01 00:00:00.
  2516. The time is returned as a list of three integers.  The first has the
  2517. most significant 16 bits of the seconds, while the second has the
  2518. least significant 16 bits.  The third integer gives the microsecond
  2519. count.
  2520.  
  2521. The microsecond count is zero on systems that do not provide
  2522. resolution finer than a second.
  2523.  
  2524. arguments: ()
  2525. Fcurrent-process-time
  2526. Return the amount of time used by this XEmacs process so far.
  2527. The return value is a list of three floating-point numbers, expressing
  2528. the user, system, and real times used by the process.  The user time
  2529. measures the time actually spent by the CPU executing the code in this
  2530. process.  The system time measures time spent by the CPU executing kernel
  2531. code on behalf of this process (e.g. I/O requests made by the process).
  2532.  
  2533. Note that the user and system times measure processor time, as opposed
  2534. to real time, and only accrue when the processor is actually doing
  2535. something: Time spent in an idle wait (waiting for user events to come
  2536. in or for I/O on a disk drive or other device to complete) does not
  2537. count.  Thus, the user and system times will often be considerably
  2538. less than the real time.
  2539.  
  2540. Some systems do not allow the user and system times to be distinguished.
  2541. In this case, the user time will be the total processor time used by
  2542. the process, and the system time will be 0.
  2543.  
  2544. Some systems do not allow the real and processor times to be distinguished.
  2545. In this case, the user and real times will be the same and the system
  2546. time will be 0.
  2547.  
  2548. arguments: ()
  2549. Fformat-time-string
  2550. Use FORMAT-STRING to format the time TIME.
  2551. TIME is specified as (HIGH LOW . IGNORED) or (HIGH . LOW), as from
  2552. `current-time' and `file-attributes'.  If TIME is not specified it
  2553. defaults to the current time.
  2554. FORMAT-STRING may contain %-sequences to substitute parts of the time.
  2555. %a is replaced by the abbreviated name of the day of week.
  2556. %A is replaced by the full name of the day of week.
  2557. %b is replaced by the abbreviated name of the month.
  2558. %B is replaced by the full name of the month.
  2559. %c is a synonym for "%x %X".
  2560. %C is a locale-specific synonym, which defaults to "%A, %B %e, %Y" in the C locale.
  2561. %d is replaced by the day of month, zero-padded.
  2562. %D is a synonym for "%m/%d/%y".
  2563. %e is replaced by the day of month, blank-padded.
  2564. %h is a synonym for "%b".
  2565. %H is replaced by the hour (00-23).
  2566. %I is replaced by the hour (00-12).
  2567. %j is replaced by the day of the year (001-366).
  2568. %k is replaced by the hour (0-23), blank padded.
  2569. %l is replaced by the hour (1-12), blank padded.
  2570. %m is replaced by the month (01-12).
  2571. %M is replaced by the minute (00-59).
  2572. %n is a synonym for "\n".
  2573. %p is replaced by AM or PM, as appropriate.
  2574. %r is a synonym for "%I:%M:%S %p".
  2575. %R is a synonym for "%H:%M".
  2576. %S is replaced by the second (00-60).
  2577. %t is a synonym for "\t".
  2578. %T is a synonym for "%H:%M:%S".
  2579. %U is replaced by the week of the year (00-53), first day of week is Sunday.
  2580. %w is replaced by the day of week (0-6), Sunday is day 0.
  2581. %W is replaced by the week of the year (00-53), first day of week is Monday.
  2582. %x is a locale-specific synonym, which defaults to "%D" in the C locale.
  2583. %X is a locale-specific synonym, which defaults to "%T" in the C locale.
  2584. %y is replaced by the year without century (00-99).
  2585. %Y is replaced by the year with century.
  2586. %Z is replaced by the time zone abbreviation.
  2587.  
  2588. The number of options reflects the `strftime' function.
  2589.  
  2590. BUG: If the charset used by the current locale is not ISO 8859-1, the
  2591. characters appearing in the day and month names may be incorrect.
  2592.  
  2593. arguments: (FORMAT-STRING &optional -TIME)
  2594. Fdecode-time
  2595. Decode a time value as (SEC MINUTE HOUR DAY MONTH YEAR DOW DST ZONE).
  2596. The optional SPECIFIED-TIME should be a list of (HIGH LOW . IGNORED)
  2597. or (HIGH . LOW), as from `current-time' and `file-attributes', or `nil'
  2598. to use the current time.  The list has the following nine members:
  2599. SEC is an integer between 0 and 60; SEC is 60 for a leap second, which
  2600. only some operating systems support.  MINUTE is an integer between 0 and 59.
  2601. HOUR is an integer between 0 and 23.  DAY is an integer between 1 and 31.
  2602. MONTH is an integer between 1 and 12.  YEAR is an integer indicating the
  2603. four-digit year.  DOW is the day of week, an integer between 0 and 6, where
  2604. 0 is Sunday.  DST is t if daylight savings time is effect, otherwise nil.
  2605. ZONE is an integer indicating the number of seconds east of Greenwich.
  2606. (Note that Common Lisp has different meanings for DOW and ZONE.)
  2607.  
  2608. arguments: (&optional SPECIFIED-TIME)
  2609. Fencode-time
  2610. Convert SECOND, MINUTE, HOUR, DAY, MONTH, YEAR and ZONE to internal time.
  2611. This is the reverse operation of `decode-time', which see.
  2612. ZONE defaults to the current time zone rule.  This can
  2613. be a string (as from `set-time-zone-rule'), or it can be a list
  2614. (as from `current-time-zone') or an integer (as from `decode-time')
  2615. applied without consideration for daylight savings time.
  2616.  
  2617. You can pass more than 7 arguments; then the first six arguments
  2618. are used as SECOND through YEAR, and the *last* argument is used as ZONE.
  2619. The intervening arguments are ignored.
  2620. This feature lets (apply 'encode-time (decode-time ...)) work.
  2621.  
  2622. Out-of-range values for SEC, MINUTE, HOUR, DAY, or MONTH are allowed;
  2623. for example, a DAY of 0 means the day preceding the given month.
  2624. Year numbers less than 100 are treated just like other year numbers.
  2625. If you want them to stand for years in this century, you must do that yourself.Fcurrent-time-string
  2626. Return the current time, as a human-readable string.
  2627. Programs can use this function to decode a time,
  2628. since the number of columns in each field is fixed.
  2629. The format is `Sun Sep 16 01:03:52 1973'.
  2630. If an argument is given, it specifies a time to format
  2631. instead of the current time.  The argument should have the form:
  2632.   (HIGH . LOW)
  2633. or the form:
  2634.   (HIGH LOW . IGNORED).
  2635. Thus, you can use times obtained from `current-time'
  2636. and from `file-attributes'.
  2637.  
  2638. arguments: (&optional SPECIFIED-TIME)
  2639. Fcurrent-time-zone
  2640. Return the offset and name for the local time zone.
  2641. This returns a list of the form (OFFSET NAME).
  2642. OFFSET is an integer number of seconds ahead of UTC (east of Greenwich).
  2643.     A negative value means west of Greenwich.
  2644. NAME is a string giving the name of the time zone.
  2645. If an argument is given, it specifies when the time zone offset is determined
  2646. instead of using the current time.  The argument should have the form:
  2647.   (HIGH . LOW)
  2648. or the form:
  2649.   (HIGH LOW . IGNORED).
  2650. Thus, you can use times obtained from `current-time'
  2651. and from `file-attributes'.
  2652.  
  2653. Some operating systems cannot provide all this information to Emacs;
  2654. in this case, `current-time-zone' returns a list containing nil for
  2655. the data it can't find.
  2656.  
  2657. arguments: (&optional SPECIFIED-TIME)
  2658. Fset-time-zone-rule
  2659. Set the local time zone using TZ, a string specifying a time zone rule.
  2660. If TZ is nil, use implementation-defined default time zone information.
  2661.  
  2662. arguments: (TZ)
  2663. Finsert
  2664. Insert the arguments, either strings or characters, at point.
  2665. Point moves forward so that it ends up after the inserted text.
  2666. Any other markers at the point of insertion remain before the text.
  2667. If a string has non-null string-extent-data, new extents will be created.Finsert-before-markers
  2668. Insert strings or characters at point, relocating markers after the text.
  2669. Point moves forward so that it ends up after the inserted text.
  2670. Any other markers at the point of insertion also end up after the text.Finsert-string
  2671. Insert STRING into BUFFER at BUFFER's point.
  2672. Point moves forward so that it ends up after the inserted text.
  2673. Any other markers at the point of insertion remain before the text.
  2674. If a string has non-null string-extent-data, new extents will be created.
  2675. BUFFER defaults to the current buffer.
  2676.  
  2677. arguments: (STRING &optional BUFFER)
  2678. Finsert-char
  2679. Insert COUNT (second arg) copies of CHR (first arg).
  2680. Point and all markers are affected as in the function `insert'.
  2681. COUNT defaults to 1 if omitted.
  2682. The optional third arg IGNORED is INHERIT under FSF Emacs.
  2683. This is highly bogus, however, and XEmacs always behaves as if
  2684. `t' were passed to INHERIT.
  2685. The optional fourth arg BUFFER specifies the buffer to insert the
  2686. text into.  If BUFFER is nil, the current buffer is assumed.
  2687.  
  2688. arguments: (CHR &optional COUNT IGNORED BUFFER)
  2689. Fbuffer-substring
  2690. Return the contents of part of BUFFER as a string.
  2691. The two arguments START and END are character positions;
  2692. they can be in either order.  If omitted, they default to the beginning
  2693. and end of BUFFER, respectively.
  2694. If there are duplicable extents in the region, the string remembers
  2695. them in its extent data.
  2696. If BUFFER is nil, the current buffer is assumed.
  2697.  
  2698. arguments: (&optional START END BUFFER)
  2699. Finsert-buffer-substring
  2700. Insert before point a substring of the contents of buffer BUFFER.
  2701. BUFFER may be a buffer or a buffer name.
  2702. Arguments START and END are character numbers specifying the substring.
  2703. They default to the beginning and the end of BUFFER.
  2704.  
  2705. arguments: (BUFFER &optional START END)
  2706. Fcompare-buffer-substrings
  2707. Compare two substrings of two buffers; return result as number.
  2708. the value is -N if first string is less after N-1 chars,
  2709. +N if first string is greater after N-1 chars, or 0 if strings match.
  2710. Each substring is represented as three arguments: BUFFER, START and END.
  2711. That makes six args in all, three for each substring.
  2712.  
  2713. The value of `case-fold-search' in the current buffer
  2714. determines whether case is significant or ignored.
  2715.  
  2716. arguments: (BUFFER1 START1 END1 BUFFER2 START2 END2)
  2717. Fsubst-char-in-region
  2718. From START to END, replace FROMCHAR with TOCHAR each time it occurs.
  2719. If optional arg NOUNDO is non-nil, don't record this change for undo
  2720. and don't mark the buffer as really changed.
  2721.  
  2722. arguments: (START END FROMCHAR TOCHAR &optional NOUNDO)
  2723. Ftranslate-region
  2724. From START to END, translate characters according to TABLE.
  2725. TABLE is a string; the Nth character in it is the mapping
  2726. for the character with code N.  Returns the number of characters changed.
  2727.  
  2728. arguments: (START END TABLE)
  2729. Fdelete-region
  2730. Delete the text between point and mark.
  2731. When called from a program, expects two arguments,
  2732. positions (integers or markers) specifying the stretch to be deleted.
  2733. If BUFFER is nil, the current buffer is assumed.
  2734.  
  2735. arguments: (B E &optional BUFFER)
  2736. Fwiden
  2737. Remove restrictions (narrowing) from BUFFER.
  2738. This allows the buffer's full text to be seen and edited.
  2739. If BUFFER is nil, the current buffer is assumed.
  2740.  
  2741. arguments: (&optional BUFFER)
  2742. Fnarrow-to-region
  2743. Restrict editing in BUFFER to the current region.
  2744. The rest of the text becomes temporarily invisible and untouchable
  2745. but is not deleted; if you save the buffer in a file, the invisible
  2746. text is included in the file.  \[widen] makes all visible again.
  2747. If BUFFER is nil, the current buffer is assumed.
  2748. See also `save-restriction'.
  2749.  
  2750. When calling from a program, pass two arguments; positions (integers
  2751. or markers) bounding the text that should remain visible.
  2752.  
  2753. arguments: (B E &optional BUFFER)
  2754. Fsave-restriction
  2755. Execute BODY, saving and restoring current buffer's restrictions.
  2756. The buffer's restrictions make parts of the beginning and end invisible.
  2757. (They are set up with `narrow-to-region' and eliminated with `widen'.)
  2758. This special form, `save-restriction', saves the current buffer's restrictions
  2759. when it is entered, and restores them when it is exited.
  2760. So any `narrow-to-region' within BODY lasts only until the end of the form.
  2761. The old restrictions settings are restored
  2762. even in case of abnormal exit (throw or error).
  2763.  
  2764. The value returned is the value of the last form in BODY.
  2765.  
  2766. `save-restriction' can get confused if, within the BODY, you widen
  2767. and then make changes outside the area within the saved restrictions.
  2768.  
  2769. Note: if you are using both `save-excursion' and `save-restriction',
  2770. use `save-excursion' outermost:
  2771.     (save-excursion (save-restriction ...))Fformat
  2772. Format a string out of a control-string and arguments.
  2773. The first argument is a control string.
  2774. The other arguments are substituted into it to make the result, a string.
  2775. It may contain %-sequences meaning to substitute the next argument.
  2776. %s means print all objects as-is, using `princ'.
  2777. %S means print all objects as s-expressions, using `prin1'.
  2778. %d or %i means print as an integer in decimal (%o octal, %x lowercase hex,
  2779.   %X uppercase hex).
  2780. %c means print as a single character.
  2781. %f means print as a floating-point number in fixed notation (e.g. 785.200).
  2782. %e or %E means print as a floating-point number in scientific notation
  2783.   (e.g. 7.85200e+03).
  2784. %g or %G means print as a floating-point number in "pretty format";
  2785.   depending on the number, either %f or %e/%E format will be used, and
  2786.   trailing zeroes are removed from the fractional part.
  2787. The argument used for all but %s and %S must be a number.  It will be
  2788.   converted to an integer or a floating-point number as necessary.
  2789.  
  2790. %$ means reposition to read a specific numbered argument; for example,
  2791.   %3$s would apply the `%s' to the third argument after the control string,
  2792.   and the next format directive would use the fourth argument, the
  2793.   following one the fifth argument, etc. (There must be a positive integer
  2794.   between the % and the $).
  2795. Zero or more of the flag characters `-', `+', ` ', `0', and `#' may be
  2796.   specified between the optional repositioning spec and the conversion
  2797.   character; see below.
  2798. An optional minimum field width may be specified after any flag characters
  2799.   and before the conversion character; it specifies the minimum number of
  2800.   characters that the converted argument will take up.  Padding will be
  2801.   added on the left (or on the right, if the `-' flag is specified), as
  2802.   necessary.  Padding is done with spaces, or with zeroes if the `0' flag
  2803.   is specified.
  2804. If the field width is specified as `*', the field width is assumed to have
  2805.   been specified as an argument.  Any repositioning specification that
  2806.   would normally specify the argument to be converted will now specify
  2807.   where to find this field width argument, not where to find the argument
  2808.   to be converted.  If there is no repositioning specification, the normal
  2809.   next argument is used.  The argument to be converted will be the next
  2810.   argument after the field width argument unless the precision is also
  2811.   specified as `*' (see below).
  2812.  
  2813. An optional period character and precision may be specified after any
  2814.   minimum field width.  It specifies the minimum number of digits to
  2815.   appear in %d, %i, %o, %x, and %X conversions (the number is padded
  2816.   on the left with zeroes as necessary); the number of digits printed
  2817.   after the decimal point for %f, %e, and %E conversions; the number
  2818.   of significant digits printed in %g and %G conversions; and the
  2819.   maximum number of non-padding characters printed in %s and %S
  2820.   conversions.  The default precision for floating-point conversions
  2821.   is six.
  2822. If the precision is specified as `*', the precision is assumed to have been
  2823.   specified as an argument.  The argument used will be the next argument
  2824.   after the field width argument, if any.  If the field width was not
  2825.   specified as an argument, any repositioning specification that would
  2826.   normally specify the argument to be converted will now specify where to
  2827.   find the precision argument.  If there is no repositioning specification,
  2828.   the normal next argument is used.
  2829.  
  2830. The ` ' and `+' flags mean prefix non-negative numbers with a space or
  2831.   plus sign, respectively.
  2832. The `#' flag means print numbers in an alternate, more verbose format:
  2833.   octal numbers begin with zero; hex numbers begin with a 0x or 0X;
  2834.   a decimal point is printed in %f, %e, and %E conversions even if no
  2835.   numbers are printed after it; and trailing zeroes are not omitted in
  2836.    %g and %G conversions.
  2837.  
  2838. Use %% to put a single % into the output.Fchar-equal
  2839. Return t if two characters match, optionally ignoring case.
  2840. Both arguments must be characters (i.e. NOT integers).
  2841. Case is ignored if `case-fold-search' is non-nil in BUFFER.
  2842. If BUFFER is nil, the current buffer is assumed.
  2843.  
  2844. arguments: (C1 C2 &optional BUFFER)
  2845. Fchar=
  2846. Return t if two characters match, case is significant.
  2847. Both arguments must be characters (i.e. NOT integers).
  2848. The optional buffer argument is for symmetry and is ignored.
  2849.  
  2850. arguments: (C1 C2 &optional BUFFER)
  2851. Ftranspose-regions
  2852. Transpose region START1 to END1 with START2 to END2.
  2853. The regions may not be overlapping, because the size of the buffer is
  2854. never changed in a transposition.
  2855.  
  2856. Optional fifth arg LEAVE_MARKERS, if non-nil, means don't transpose
  2857. any markers that happen to be located in the regions. (#### BUG: currently
  2858. this function always acts as if LEAVE_MARKERS is non-nil.)
  2859.  
  2860. Transposing beyond buffer boundaries is an error.
  2861.  
  2862. arguments: (STARTR1 ENDR1 STARTR2 ENDR2 &optional LEAVE-MARKERS)
  2863. Vzmacs-regions
  2864. *Whether LISPM-style active regions should be used.
  2865. This means that commands which operate on the region (the area between the
  2866. point and the mark) will only work while the region is in the ``active''
  2867. state, which is indicated by highlighting.  Executing most commands causes
  2868. the region to not be in the active state, so (for example) \[kill-region] will only
  2869. work immediately after activating the region.
  2870.  
  2871. More specifically:
  2872.  
  2873.  - Commands which operate on the region only work if the region is active.
  2874.  - Only a very small set of commands cause the region to become active:
  2875.    Those commands whose semantics are to mark an area, like mark-defun.
  2876.  - The region is deactivated after each command that is executed, except that:
  2877.  - "Motion" commands do not change whether the region is active or not.
  2878.  
  2879. set-mark-command (C-SPC) pushes a mark and activates the region.  Moving the
  2880. cursor with normal motion commands (C-n, C-p, etc) will cause the region
  2881. between point and the recently-pushed mark to be highlighted.  It will
  2882. remain highlighted until some non-motion command is executed.
  2883.  
  2884. exchange-point-and-mark (\[exchange-point-and-mark]) activates the region.  So if you mark a
  2885. region and execute a command that operates on it, you can reactivate the
  2886. same region with \[exchange-point-and-mark] (or perhaps \[exchange-point-and-mark] \[exchange-point-and-mark]) to operate on it
  2887. again.
  2888.  
  2889. Generally, commands which push marks as a means of navigation (like
  2890. beginning-of-buffer and end-of-buffer (M-< and M->)) do not activate the
  2891. region.  But commands which push marks as a means of marking an area of
  2892. text (like mark-defun (\[mark-defun]), mark-word (\[mark-word]) or mark-whole-buffer (\[mark-whole-buffer]))
  2893. do activate the region.
  2894.  
  2895. The way the command loop actually works with regard to deactivating the
  2896. region is as follows:
  2897.  
  2898. - If the variable `zmacs-region-stays' has been set to t during the command
  2899.   just executed, the region is left alone (this is how the motion commands
  2900.   make the region stay around; see the `_' flag in the `interactive'
  2901.   specification).  `zmacs-region-stays' is reset to nil before each command
  2902.   is executed.
  2903. - If the function `zmacs-activate-region' has been called during the command
  2904.   just executed, the region is left alone.  Very few functions should
  2905.   actually call this function.
  2906. - Otherwise, if the region is active, the region is deactivated and
  2907.   the `zmacs-deactivate-region-hook' is called.Vzmacs-region-active-p
  2908. Do not alter this.  It is for internal use only.Vzmacs-region-stays
  2909. Commands which do not wish to affect whether the region is currently
  2910. highlighted should set this to t.  Normally, the region is turned off after
  2911. executing each command that did not explicitly turn it on with the function
  2912. zmacs-activate-region. Setting this to true lets a command be non-intrusive.
  2913. See the variable `zmacs-regions'.Vatomic-extent-goto-char-p
  2914. Do not use this -- it will be going away soon.
  2915. Indicates if `goto-char' has just been run.  This information is allegedly
  2916. needed to get the desired behavior for atomic extents and unfortunately
  2917. is not available by any other means.Fhashtablep
  2918. Return t if OBJ is a hashtable, else nil.
  2919.  
  2920. arguments: (OBJ)
  2921. Fmake-hashtable
  2922. Make a hashtable of initial size SIZE.
  2923. Comparison between keys is done with TEST-FUN, which must be one of
  2924. `eq', `eql', or `equal'.  The default is `eql'; i.e. two keys must
  2925. be the same object (or have the same floating-point value, for floats)
  2926. to be considered equivalent.
  2927.  
  2928. See also `make-weak-hashtable', `make-key-weak-hashtable', and
  2929. `make-value-weak-hashtable'.
  2930.  
  2931. arguments: (SIZE &optional TEST-FUN)
  2932. Fcopy-hashtable
  2933. Make a new hashtable which contains the same keys and values
  2934. as the given table.  The keys and values will not themselves be copied.
  2935.  
  2936. arguments: (OLD-TABLE)
  2937. Fgethash
  2938. Find hash value for KEY in HASHTABLE.
  2939. If there is no corresponding value, return DEFAULT (defaults to nil).
  2940.  
  2941. arguments: (KEY HASHTABLE &optional DEFAULT)
  2942. Fremhash
  2943. Remove hash value for KEY in HASHTABLE.
  2944.  
  2945. arguments: (KEY HASHTABLE)
  2946. Fputhash
  2947. Hash KEY to VAL in HASHTABLE.
  2948.  
  2949. arguments: (KEY VAL HASHTABLE)
  2950. Fclrhash
  2951. Remove all entries from HASHTABLE.
  2952.  
  2953. arguments: (HASHTABLE)
  2954. Fhashtable-fullness
  2955. Return number of entries in HASHTABLE.
  2956.  
  2957. arguments: (HASHTABLE)
  2958. Fmaphash
  2959. Map FUNCTION over entries in HASHTABLE, calling it with two args,
  2960. each key and value in the table.
  2961.  
  2962. arguments: (FUNCTION HASHTABLE)
  2963. Fmake-weak-hashtable
  2964. Make a fully weak hashtable of initial size SIZE.
  2965. A weak hashtable is one whose pointers do not count as GC referents:
  2966. for any key-value pair in the hashtable, if the only remaining pointer
  2967. to either the key or the value is in a weak hash table, then the pair
  2968. will be removed from the table, and the key and value collected.  A
  2969. non-weak hash table (or any other pointer) would prevent the object
  2970. from being collected.
  2971.  
  2972. You can also create semi-weak hashtables; see `make-key-weak-hashtable'
  2973. and `make-value-weak-hashtable'.
  2974.  
  2975. arguments: (SIZE &optional TEST-FUN)
  2976. Fmake-key-weak-hashtable
  2977. Make a key-weak hashtable of initial size SIZE.
  2978. A key-weak hashtable is similar to a fully-weak hashtable (see
  2979. `make-weak-hashtable') except that a key-value pair will be removed
  2980. only if the key remains unmarked outside of weak hashtables.  The pair
  2981. will remain in the hashtable if the key is pointed to by something other
  2982. than a weak hashtable, even if the value is not.
  2983.  
  2984. arguments: (SIZE &optional TEST-FUN)
  2985. Fmake-value-weak-hashtable
  2986. Make a value-weak hashtable of initial size SIZE.
  2987. A value-weak hashtable is similar to a fully-weak hashtable (see
  2988. `make-weak-hashtable') except that a key-value pair will be removed only
  2989. if the value remains unmarked outside of weak hashtables.  The pair will
  2990. remain in the hashtable if the value is pointed to by something other
  2991. than a weak hashtable, even if the key is not.
  2992.  
  2993. arguments: (SIZE &optional TEST-FUN)
  2994. Finvocation-name
  2995. Return the program name that was used to run XEmacs.
  2996. Any directory names are omitted.
  2997.  
  2998. arguments: ()
  2999. Finvocation-directory
  3000. Return the directory name in which the Emacs executable was located.
  3001.  
  3002. arguments: ()
  3003. Frunning-temacs-p
  3004. True if running temacs.  This means we are in the dumping stage.
  3005. This is false during normal execution of the `xemacs' program, and
  3006. becomes false once `run-emacs-from-temacs' is run.
  3007.  
  3008. arguments: ()
  3009. Frun-emacs-from-temacs
  3010. Do not call this.  It will reinitialize your XEmacs.  You'll be sorry.Fkill-emacs
  3011. Exit the XEmacs job and kill it.  Ask for confirmation, without argument.
  3012. If ARG is an integer, return ARG as the exit program code.
  3013. If ARG is a string, stuff it as keyboard input.
  3014.  
  3015. The value of `kill-emacs-hook', if not void,
  3016. is a list of functions (of no args),
  3017. all of which are called before XEmacs is actually killed.
  3018.  
  3019. arguments: (&optional ARG)
  3020. Fdump-emacs-data
  3021. Dump current state of XEmacs into data file FILENAME.
  3022. This function exists on systems that use HAVE_SHM.
  3023.  
  3024. arguments: (INTONAME)
  3025. Fdump-emacs
  3026. Dump current state of XEmacs into executable file FILENAME.
  3027. Take symbols from SYMFILE (presumably the file you executed to run XEmacs).
  3028. This is used in the file `loadup.el' when building XEmacs.
  3029.  
  3030. Remember to set `command-line-processed' to nil before dumping
  3031. if you want the dumped XEmacs to process its command line
  3032. and announce itself normally when it is run.
  3033.  
  3034. arguments: (INTONAME SYMNAME)
  3035. Fnoninteractive
  3036. Non-nil return value means XEmacs is running without interactive terminal.
  3037.  
  3038. arguments: ()
  3039. Fquantify-start-recording-data
  3040. Start recording Quantify data.
  3041.  
  3042. arguments: ()
  3043. Fquantify-stop-recording-data
  3044. Stop recording Quantify data.
  3045.  
  3046. arguments: ()
  3047. Fquantify-clear-data
  3048. Clear all Quantify data.
  3049.  
  3050. arguments: ()
  3051. Vsuppress-early-error-handler-backtrace
  3052. Non-nil means early error handler shouldn't print a backtraceVcommand-line-args
  3053. Args passed by shell to XEmacs, as a list of strings.Vinvocation-name
  3054. The program name that was used to run XEmacs.
  3055. Any directory names are omitted.Vinvocation-directory
  3056. The directory in which the XEmacs executable was found, to run it.
  3057. The value is simply the program name if that directory's name is not known.Vsystem-type
  3058. Value is symbol indicating type of operating system you are using.Vsystem-configuration
  3059. Value is string indicating configuration XEmacs was built for.Vsystem-configuration-options
  3060. String containing the configuration options XEmacs was built with.Vemacs-major-version
  3061. Major version number of this version of Emacs, as an integer.
  3062. Warning: this variable did not exist in Emacs versions earlier than:
  3063.   FSF Emacs:   19.23
  3064.   XEmacs:      19.10Vemacs-minor-version
  3065. Minor version number of this version of Emacs, as an integer.
  3066. Warning: this variable did not exist in Emacs versions earlier than:
  3067.   FSF Emacs:   19.23
  3068.   XEmacs:      19.10Vemacs-beta-version
  3069. Beta number of this version of Emacs, as an integer.
  3070. The value is nil if this is an officially released version of XEmacs.
  3071. Warning: this variable does not exist in FSF Emacs or in XEmacs versions
  3072. earlier than 20.3.Vxemacs-codename
  3073. Codename of this version of Emacs (a string).Vpackage-path
  3074. List of directories configured for package searching.Vnoninteractive
  3075. Non-nil means XEmacs is running without interactive terminal.Vinhibit-package-init
  3076. Set to non-nil when the package-path should not be searched at startup.Vemacs-priority
  3077. Priority for XEmacs to run at.
  3078. This value is effective only if set before XEmacs is dumped,
  3079. and only if the XEmacs executable is installed with setuid to permit
  3080. it to change priority.  (XEmacs sets its uid back to the real uid.)
  3081. Currently, you need to define SET_EMACS_PRIORITY in `config.h'
  3082. before you compile XEmacs, to enable the code for this feature.For
  3083. Eval args until one of them yields non-nil, then return that value.
  3084. The remaining args are not evalled at all.
  3085. If all args return nil, return nil.Fand
  3086. Eval args until one of them yields nil, then return nil.
  3087. The remaining args are not evalled at all.
  3088. If no arg yields nil, return the last arg's value.Fif
  3089. (if COND THEN ELSE...): if COND yields non-nil, do THEN, else do ELSE...
  3090. Returns the value of THEN or the value of the last of the ELSE's.
  3091. THEN must be one expression, but ELSE... can be zero or more expressions.
  3092. If COND yields nil, and there are no ELSE's, the value is nil.Fcond
  3093. (cond CLAUSES...): try each clause until one succeeds.
  3094. Each clause looks like (CONDITION BODY...).  CONDITION is evaluated
  3095. and, if the value is non-nil, this clause succeeds:
  3096. then the expressions in BODY are evaluated and the last one's
  3097. value is the value of the cond-form.
  3098. If no clause succeeds, cond returns nil.
  3099. If a clause has one element, as in (CONDITION),
  3100. CONDITION's value if non-nil is returned from the cond-form.Fprogn
  3101. (progn BODY...): eval BODY forms sequentially and return value of last one.Fprog1
  3102. (prog1 FIRST BODY...): eval FIRST and BODY sequentially; value from FIRST.
  3103. The value of FIRST is saved during the evaluation of the remaining args,
  3104. whose values are discarded.Fprog2
  3105. (prog2 X Y BODY...): eval X, Y and BODY sequentially; value from Y.
  3106. The value of Y is saved during the evaluation of the remaining args,
  3107. whose values are discarded.Flet*
  3108. (let* VARLIST BODY...): bind variables according to VARLIST then eval BODY.
  3109. The value of the last form in BODY is returned.
  3110. Each element of VARLIST is a symbol (which is bound to nil)
  3111. or a list (SYMBOL VALUEFORM) (which binds SYMBOL to the value of VALUEFORM).
  3112. Each VALUEFORM can refer to the symbols already bound by this VARLIST.Flet
  3113. (let VARLIST BODY...): bind variables according to VARLIST then eval BODY.
  3114. The value of the last form in BODY is returned.
  3115. Each element of VARLIST is a symbol (which is bound to nil)
  3116. or a list (SYMBOL VALUEFORM) (which binds SYMBOL to the value of VALUEFORM).
  3117. All the VALUEFORMs are evalled before any symbols are bound.Fwhile
  3118. (while TEST BODY...): if TEST yields non-nil, eval BODY... and repeat.
  3119. The order of execution is thus TEST, BODY, TEST, BODY and so on
  3120. until TEST returns nil.Fsetq
  3121. (setq SYM VAL SYM VAL ...): set each SYM to the value of its VAL.
  3122. The symbols SYM are variables; they are literal (not evaluated).
  3123. The values VAL are expressions; they are evaluated.
  3124. Thus, (setq x (1+ y)) sets `x' to the value of `(1+ y)'.
  3125. The second VAL is not computed until after the first SYM is set, and so on;
  3126. each VAL can use the new value of variables set earlier in the `setq'.
  3127. The return value of the `setq' form is the value of the last VAL.Fquote
  3128. Return the argument, without evaluating it.  `(quote x)' yields `x'.Ffunction
  3129. Like `quote', but preferred for objects which are functions.
  3130. In byte compilation, `function' causes its argument to be compiled.
  3131. `quote' cannot do that.Fdefun
  3132. (defun NAME ARGLIST [DOCSTRING] BODY...): define NAME as a function.
  3133. The definition is (lambda ARGLIST [DOCSTRING] BODY...).
  3134. See also the function `interactive'.Fdefmacro
  3135. (defmacro NAME ARGLIST [DOCSTRING] BODY...): define NAME as a macro.
  3136. The definition is (macro lambda ARGLIST [DOCSTRING] BODY...).
  3137. When the macro is called, as in (NAME ARGS...),
  3138. the function (lambda ARGLIST BODY...) is applied to
  3139. the list ARGS... as it appears in the expression,
  3140. and the result should be a form to be evaluated instead of the original.Fdefvar
  3141. (defvar SYMBOL INITVALUE DOCSTRING): define SYMBOL as a variable.
  3142. You are not required to define a variable in order to use it,
  3143.  but the definition can supply documentation and an initial value
  3144.  in a way that tags can recognize.
  3145.  
  3146. INITVALUE is evaluated, and used to set SYMBOL, only if SYMBOL's value is
  3147.  void. (However, when you evaluate a defvar interactively, it acts like a
  3148.  defconst: SYMBOL's value is always set regardless of whether it's currently
  3149.  void.)
  3150. If SYMBOL is buffer-local, its default value is what is set;
  3151.  buffer-local values are not affected.
  3152. INITVALUE and DOCSTRING are optional.
  3153. If DOCSTRING starts with *, this variable is identified as a user option.
  3154.  This means that M-x set-variable and M-x edit-options recognize it.
  3155. If INITVALUE is missing, SYMBOL's value is not set.
  3156.  
  3157. In lisp-interaction-mode defvar is treated as defconst.Fdefconst
  3158. (defconst SYMBOL INITVALUE DOCSTRING): define SYMBOL as a constant
  3159. variable.
  3160. The intent is that programs do not change this value, but users may.
  3161. Always sets the value of SYMBOL to the result of evalling INITVALUE.
  3162. If SYMBOL is buffer-local, its default value is what is set;
  3163.  buffer-local values are not affected.
  3164. DOCSTRING is optional.
  3165. If DOCSTRING starts with *, this variable is identified as a user option.
  3166.  This means that M-x set-variable and M-x edit-options recognize it.
  3167.  
  3168. Note: do not use `defconst' for user options in libraries that are not
  3169.  normally loaded, since it is useful for users to be able to specify
  3170.  their own values for such variables before loading the library.
  3171. Since `defconst' unconditionally assigns the variable,
  3172.  it would override the user's choice.Fuser-variable-p
  3173. Return t if VARIABLE is intended to be set and modified by users.
  3174. (The alternative is a variable used internally in a Lisp program.)
  3175. Determined by whether the first character of the documentation
  3176. for the variable is `*'.
  3177.  
  3178. arguments: (VARIABLE)
  3179. Fmacroexpand-internal
  3180. Return result of expanding macros at top level of FORM.
  3181. If FORM is not a macro call, it is returned unchanged.
  3182. Otherwise, the macro is expanded and the expansion is considered
  3183. in place of FORM.  When a non-macro-call results, it is returned.
  3184.  
  3185. The second optional arg ENVIRONMENT species an environment of macro
  3186. definitions to shadow the loaded ones for use in file byte-compilation.
  3187.  
  3188. arguments: (FORM &optional ENV)
  3189. Fcatch
  3190. (catch TAG BODY...): eval BODY allowing nonlocal exits using `throw'.
  3191. TAG is evalled to get the tag to use.  Then the BODY is executed.
  3192. Within BODY, (throw TAG) with same tag exits BODY and exits this `catch'.
  3193. If no throw happens, `catch' returns the value of the last BODY form.
  3194. If a throw happens, it specifies the value to return from `catch'.Fthrow
  3195. (throw TAG VALUE): throw to the catch for TAG and return VALUE from it.
  3196. Both TAG and VALUE are evalled.
  3197.  
  3198. arguments: (TAG VAL)
  3199. Funwind-protect
  3200. Do BODYFORM, protecting with UNWINDFORMS.
  3201. Usage looks like (unwind-protect BODYFORM UNWINDFORMS...).
  3202. If BODYFORM completes normally, its value is returned
  3203. after executing the UNWINDFORMS.
  3204. If BODYFORM exits nonlocally, the UNWINDFORMS are executed anyway.Fcondition-case
  3205. Regain control when an error is signalled.
  3206. Usage looks like (condition-case VAR BODYFORM HANDLERS...).
  3207. executes BODYFORM and returns its value if no error happens.
  3208. Each element of HANDLERS looks like (CONDITION-NAME BODY...)
  3209. where the BODY is made of Lisp expressions.
  3210.  
  3211. A handler is applicable to an error if CONDITION-NAME is one of the
  3212. error's condition names.  If an error happens, the first applicable
  3213. handler is run.  As a special case, a CONDITION-NAME of t matches
  3214. all errors, even those without the `error' condition name on them
  3215. (e.g. `quit').
  3216.  
  3217. The car of a handler may be a list of condition names
  3218. instead of a single condition name.
  3219.  
  3220. When a handler handles an error,
  3221. control returns to the condition-case and the handler BODY... is executed
  3222. with VAR bound to (SIGNALED-CONDITIONS . SIGNAL-DATA).
  3223. VAR may be nil; then you do not get access to the signal information.
  3224.  
  3225. The value of the last BODY form is returned from the condition-case.
  3226. See also the function `signal' for more info.
  3227.  
  3228. Note that at the time the condition handler is invoked, the Lisp stack
  3229. and the current catches, condition-cases, and bindings have all been
  3230. popped back to the state they were in just before the call to
  3231. `condition-case'.  This means that resignalling the error from
  3232. within the handler will not result in an infinite loop.
  3233.  
  3234. If you want to establish an error handler that is called with the
  3235. Lisp stack, bindings, etc. as they were when `signal' was called,
  3236. rather than when the handler was set, use `call-with-condition-handler'.Fcall-with-condition-handler
  3237. Regain control when an error is signalled, without popping the stack.
  3238. Usage looks like (call-with-condition-handler HANDLER FUNCTION &rest ARGS).
  3239. This function is similar to `condition-case', but the handler is invoked
  3240. with the same environment (Lisp stack, bindings, catches, condition-cases)
  3241. that was current when `signal' was called, rather than when the handler
  3242. was established.
  3243.  
  3244. HANDLER should be a function of one argument, which is a cons of the args
  3245. (SIG . DATA) that were passed to `signal'.  It is invoked whenever
  3246. `signal' is called (this differs from `condition-case', which allows
  3247. you to specify which errors are trapped).  If the handler function
  3248. returns, `signal' continues as if the handler were never invoked.
  3249. (It continues to look for handlers established earlier than this one,
  3250. and invokes the standard error-handler if none is found.)Fsignal
  3251. Signal a continuable error.  Args are ERROR-SYMBOL, and associated DATA.
  3252. An error symbol is a symbol defined using `define-error'.
  3253. DATA should be a list.  Its elements are printed as part of the error message.
  3254. If the signal is handled, DATA is made available to the handler.
  3255. See also the function `signal-error', and the functions to handle errors:
  3256. `condition-case' and `call-with-condition-handler'.
  3257.  
  3258. Note that this function can return, if the debugger is invoked and the
  3259. user invokes the "return from signal" option.
  3260.  
  3261. arguments: (ERROR-SYMBOL DATA)
  3262. Fcommandp
  3263. T if FUNCTION makes provisions for interactive calling.
  3264. This means it contains a description for how to read arguments to give it.
  3265. The value is nil for an invalid function or a symbol with no function
  3266. definition.
  3267.  
  3268. Interactively callable functions include
  3269.  
  3270. -- strings and vectors (treated as keyboard macros)
  3271. -- lambda-expressions that contain a top-level call to `interactive'
  3272. -- autoload definitions made by `autoload' with non-nil fourth argument
  3273.    (i.e. the interactive flag)
  3274. -- compiled-function objects with a non-nil `compiled-function-interactive'
  3275.    value
  3276. -- subrs (built-in functions) that are interactively callable
  3277.  
  3278. Also, a symbol satisfies `commandp' if its function definition does so.
  3279.  
  3280. arguments: (FUNCTION)
  3281. Fcommand-execute
  3282. Execute CMD as an editor command.
  3283. CMD must be an object that satisfies the `commandp' predicate.
  3284. Optional second arg RECORD-FLAG is as in `call-interactively'.
  3285. The argument KEYS specifies the value to use instead of (this-command-keys)
  3286. when reading the arguments.
  3287.  
  3288. arguments: (CMD &optional RECORD KEYS)
  3289. Finteractive-p
  3290. Return t if function in which this appears was called interactively.
  3291. This means that the function was called with call-interactively (which
  3292. includes being called as the binding of a key)
  3293. and input is currently coming from the keyboard (not in keyboard macro).
  3294.  
  3295. arguments: ()
  3296. Fautoload
  3297. Define FUNCTION to autoload from FILE.
  3298. FUNCTION is a symbol; FILE is a file name string to pass to `load'.
  3299. Third arg DOCSTRING is documentation for the function.
  3300. Fourth arg INTERACTIVE if non-nil says function can be called interactively.
  3301. Fifth arg TYPE indicates the type of the object:
  3302.    nil or omitted says FUNCTION is a function,
  3303.    `keymap' says FUNCTION is really a keymap, and
  3304.    `macro' or t says FUNCTION is really a macro.
  3305. Third through fifth args give info about the real definition.
  3306. They default to nil.
  3307. If FUNCTION is already defined other than as an autoload,
  3308. this does nothing and returns nil.
  3309.  
  3310. arguments: (FUNCTION FILE &optional DOCSTRING INTERACTIVE TYPE)
  3311. Feval
  3312. Evaluate FORM and return its value.
  3313.  
  3314. arguments: (FORM)
  3315. Ffuncall
  3316. Call first argument as a function, passing remaining arguments to it.
  3317. Thus, (funcall 'cons 'x 'y) returns (x . y).Ffunction-min-args
  3318. Return the number of arguments a function may be called with.  The
  3319. function may be any form that can be passed to `funcall', any special
  3320. form, or any macro.
  3321.  
  3322. arguments: (FUNCTION)
  3323. Ffunction-max-args
  3324. Return the number of arguments a function may be called with.  If the
  3325. function takes an arbitrary number of arguments or is a built-in
  3326. special form, nil is returned.  The function may be any form that can
  3327. be passed to `funcall', any special form, or any macro.
  3328.  
  3329. arguments: (FUNCTION)
  3330. Fapply
  3331. Call FUNCTION with our remaining args, using our last arg as list of args.
  3332. Thus, (apply '+ 1 2 '(3 4)) returns 10.Ffetch-bytecode
  3333. If byte-compiled OBJECT is lazy-loaded, fetch it now.
  3334.  
  3335. arguments: (OBJECT)
  3336. Frun-hooks
  3337. Run each hook in HOOKS.  Major mode functions use this.
  3338. Each argument should be a symbol, a hook variable.
  3339. These symbols are processed in the order specified.
  3340. If a hook symbol has a non-nil value, that value may be a function
  3341. or a list of functions to be called to run the hook.
  3342. If the value is a function, it is called with no arguments.
  3343. If it is a list, the elements are called, in order, with no arguments.
  3344.  
  3345. To make a hook variable buffer-local, use `make-local-hook',
  3346. not `make-local-variable'.Frun-hook-with-args
  3347. Run HOOK with the specified arguments ARGS.
  3348. HOOK should be a symbol, a hook variable.  If HOOK has a non-nil
  3349. value, that value may be a function or a list of functions to be
  3350. called to run the hook.  If the value is a function, it is called with
  3351. the given arguments and its return value is returned.  If it is a list
  3352. of functions, those functions are called, in order,
  3353. with the given arguments ARGS.
  3354. It is best not to depend on the value return by `run-hook-with-args',
  3355. as that may change.
  3356.  
  3357. To make a hook variable buffer-local, use `make-local-hook',
  3358. not `make-local-variable'.Frun-hook-with-args-until-success
  3359. Run HOOK with the specified arguments ARGS.
  3360. HOOK should be a symbol, a hook variable.  Its value should
  3361. be a list of functions.  We call those functions, one by one,
  3362. passing arguments ARGS to each of them, until one of them
  3363. returns a non-nil value.  Then we return that value.
  3364. If all the functions return nil, we return nil.
  3365.  
  3366. To make a hook variable buffer-local, use `make-local-hook',
  3367. not `make-local-variable'.Frun-hook-with-args-until-failure
  3368. Run HOOK with the specified arguments ARGS.
  3369. HOOK should be a symbol, a hook variable.  Its value should
  3370. be a list of functions.  We call those functions, one by one,
  3371. passing arguments ARGS to each of them, until one of them
  3372. returns nil.  Then we return nil.
  3373. If all the functions return non-nil, we return non-nil.
  3374.  
  3375. To make a hook variable buffer-local, use `make-local-hook',
  3376. not `make-local-variable'.Fbacktrace-debug
  3377. Set the debug-on-exit flag of eval frame LEVEL levels down to FLAG.
  3378. The debugger is entered when that frame exits, if the flag is non-nil.
  3379.  
  3380. arguments: (LEVEL FLAG)
  3381. Fbacktrace
  3382. Print a trace of Lisp function calls currently active.
  3383. Option arg STREAM specifies the output stream to send the backtrace to,
  3384. and defaults to the value of `standard-output'.  Optional second arg
  3385. DETAILED means show places where currently active variable bindings,
  3386. catches, condition-cases, and unwind-protects were made as well as
  3387. function calls.
  3388.  
  3389. arguments: (&optional STREAM DETAILED)
  3390. Fbacktrace-frame
  3391. Return the function and arguments N frames up from current execution point.
  3392. If that frame has not evaluated the arguments yet (or is a special form),
  3393. the value is (nil FUNCTION ARG-FORMS...).
  3394. If that frame has evaluated its arguments and called its function already,
  3395. the value is (t FUNCTION ARG-VALUES...).
  3396. A &rest arg is represented as the tail of the list ARG-VALUES.
  3397. FUNCTION is whatever was supplied as car of evaluated list,
  3398. or a lambda expression for macro calls.
  3399. If N is more than the number of frames, the value is nil.
  3400.  
  3401. arguments: (NFRAMES)
  3402. Vmax-specpdl-size
  3403. Limit on number of Lisp variable bindings & unwind-protects before error.Vmax-lisp-eval-depth
  3404. Limit on depth in `eval', `apply' and `funcall' before error.
  3405. This limit is to catch infinite recursions for you before they cause
  3406. actual stack overflow in C, which would be fatal for Emacs.
  3407. You can safely make it considerably larger than its default value,
  3408. if that proves inconveniently small.Vquit-flag
  3409. Non-nil causes `eval' to abort, unless `inhibit-quit' is non-nil.
  3410. Typing C-G sets `quit-flag' non-nil, regardless of `inhibit-quit'.Vinhibit-quit
  3411. Non-nil inhibits C-g quitting from happening immediately.
  3412. Note that `quit-flag' will still be set by typing C-g,
  3413. so a quit will be signalled as soon as `inhibit-quit' is nil.
  3414. To prevent this happening, set `quit-flag' to nil
  3415. before making `inhibit-quit' nil.  The value of `inhibit-quit' is
  3416. ignored if a critical quit is requested by typing control-shift-G in
  3417. an X frame.Vstack-trace-on-error
  3418. *Non-nil means automatically display a backtrace buffer
  3419. after any error that is not handled by a `condition-case'.
  3420. If the value is a list, an error only means to display a backtrace
  3421. if one of its condition symbols appears in the list.
  3422. See also variable `stack-trace-on-signal'.Vstack-trace-on-signal
  3423. *Non-nil means automatically display a backtrace buffer
  3424. after any error that is signalled, whether or not it is handled by
  3425. a `condition-case'.
  3426. If the value is a list, an error only means to display a backtrace
  3427. if one of its condition symbols appears in the list.
  3428. See also variable `stack-trace-on-error'.Vdebug-ignored-errors
  3429. *List of errors for which the debugger should not be called.
  3430. Each element may be a condition-name or a regexp that matches error messages.
  3431. If any element applies to a given error, that error skips the debugger
  3432. and just returns to top level.
  3433. This overrides the variable `debug-on-error'.
  3434. It does not apply to errors handled by `condition-case'.Vdebug-on-error
  3435. *Non-nil means enter debugger if an unhandled error is signalled.
  3436. The debugger will not be entered if the error is handled by
  3437. a `condition-case'.
  3438. If the value is a list, an error only means to enter the debugger
  3439. if one of its condition symbols appears in the list.
  3440. This variable is overridden by `debug-ignored-errors'.
  3441. See also variables `debug-on-quit' and `debug-on-signal'.Vdebug-on-signal
  3442. *Non-nil means enter debugger if an error is signalled.
  3443. The debugger will be entered whether or not the error is handled by
  3444. a `condition-case'.
  3445. If the value is a list, an error only means to enter the debugger
  3446. if one of its condition symbols appears in the list.
  3447. See also variable `debug-on-quit'.Vdebug-on-quit
  3448. *Non-nil means enter debugger if quit is signalled (C-G, for example).
  3449. Does not apply if quit is handled by a `condition-case'.  Entering the
  3450. debugger can also be achieved at any time (for X11 console) by typing
  3451. control-shift-G to signal a critical quit.Vdebug-on-next-call
  3452. Non-nil means enter debugger before next `eval', `apply' or `funcall'.Vdebugger
  3453. Function to call to invoke debugger.
  3454. If due to frame exit, args are `exit' and the value being returned;
  3455.  this function's value will be returned instead of that.
  3456. If due to error, args are `error' and a list of the args to `signal'.
  3457. If due to `apply' or `funcall' entry, one arg, `lambda'.
  3458. If due to `eval' entry, one arg, t.Fmake-event
  3459. Create a new, empty event.
  3460.  
  3461. The TYPE and PLIST arguments must be nil.
  3462.  
  3463. WARNING, the event object returned may be a reused one; see the function
  3464.  `deallocate-event'.
  3465.  
  3466. arguments: (&optional TYPE PLIST)
  3467. Fdeallocate-event
  3468. Allow the given event structure to be reused.
  3469. You MUST NOT use this event object after calling this function with it.
  3470. You will lose.  It is not necessary to call this function, as event
  3471. objects are garbage-collected like all other objects; however, it may
  3472. be more efficient to explicitly deallocate events when you are sure
  3473. that it is safe to do so.
  3474.  
  3475. arguments: (EVENT)
  3476. Fcopy-event
  3477. Make a copy of the given event object.
  3478. If a second argument is given, the first event is copied into the second
  3479. and the second is returned.  If the second argument is not supplied (or
  3480. is nil) then a new event will be made as with `allocate-event.'  See also
  3481. the function `deallocate-event'.
  3482.  
  3483. arguments: (EVENT1 &optional EVENT2)
  3484. Fevent-to-character
  3485. Return the closest ASCII approximation to the given event object.
  3486. If the event isn't a keypress, this returns nil.
  3487. If the ALLOW-EXTRA-MODIFIERS argument is non-nil, then this is lenient in
  3488.  its translation; it will ignore modifier keys other than control and meta,
  3489.  and will ignore the shift modifier on those characters which have no
  3490.  shifted ASCII equivalent (Control-Shift-A for example, will be mapped to
  3491.  the same ASCII code as Control-A).
  3492. If the ALLOW-META argument is non-nil, then the Meta modifier will be
  3493.  represented by turning on the high bit of the byte returned; otherwise, nil
  3494.  will be returned for events containing the Meta modifier.
  3495. If the ALLOW-NON-ASCII argument is non-nil, then characters which are
  3496.  present in the prevailing character set (see the `character-set-property'
  3497.  variable) will be returned as their code in that character set, instead of
  3498.  the return value being restricted to ASCII.
  3499. Note that specifying both ALLOW-META and ALLOW-NON-ASCII is ambiguous, as
  3500.  both use the high bit; `M-x' and `oslash' will be indistinguishable.
  3501.  
  3502. arguments: (EVENT &optional ALLOW-EXTRA-MODIFIERS ALLOW-META ALLOW-NON-ASCII)
  3503. Fcharacter-to-event
  3504. Converts a keystroke specifier into an event structure, replete with
  3505. bucky bits.  The keystroke is the first argument, and the event to fill
  3506. in is the second.  This function contains knowledge about what the codes
  3507. ``mean'' -- for example, the number 9 is converted to the character ``Tab'',
  3508. not the distinct character ``Control-I''.
  3509.  
  3510. Note that CH (the keystroke specifier) can be an integer, a character,
  3511. a symbol such as 'clear, or a list such as '(control backspace).
  3512.  
  3513. If the optional second argument is an event, it is modified;
  3514. otherwise, a new event object is created.
  3515.  
  3516. Optional third arg CONSOLE is the console to store in the event, and
  3517. defaults to the selected console.
  3518.  
  3519. If CH is an integer or character, the high bit may be interpreted as the
  3520. meta key. (This is done for backward compatibility in lots of places.)
  3521. If USE-CONSOLE-META-FLAG is nil, this will always be the case.  If
  3522. USE-CONSOLE-META-FLAG is non-nil, the `meta' flag for CONSOLE affects
  3523. whether the high bit is interpreted as a meta key. (See `set-input-mode'.)
  3524. If you don't want this silly meta interpretation done, you should pass
  3525. in a list containing the character.
  3526.  
  3527. Beware that character-to-event and event-to-character are not strictly
  3528. inverse functions, since events contain much more information than the
  3529. ASCII character set can encode.
  3530.  
  3531. arguments: (CH &optional EVENT CONSOLE USE-CONSOLE-META-FLAG)
  3532. Feventp
  3533. True if OBJECT is an event object.
  3534.  
  3535. arguments: (OBJECT)
  3536. Fevent-live-p
  3537. True if OBJECT is an event object that has not been deallocated.
  3538.  
  3539. arguments: (OBJECT)
  3540. Fevent-type
  3541. Return the type of EVENT.
  3542. This will be a symbol; one of
  3543.  
  3544. key-press    A key was pressed.
  3545. button-press    A mouse button was pressed.
  3546. button-release    A mouse button was released.
  3547. misc-user    Some other user action happened; typically, this is
  3548.         a menu selection or scrollbar action.
  3549. motion        The mouse moved.
  3550. process        Input is available from a subprocess.
  3551. timeout        A timeout has expired.
  3552. eval        This causes a specified action to occur when dispatched.
  3553. magic        Some window-system-specific event has occurred.
  3554. empty        The event has been allocated but not assigned.
  3555.  
  3556.  
  3557. arguments: (EVENT)
  3558. Fevent-timestamp
  3559. Return the timestamp of the event object EVENT.
  3560.  
  3561. arguments: (EVENT)
  3562. Fevent-key
  3563. Return the Keysym of the key-press event EVENT.
  3564. This will be a character if the event is associated with one, else a symbol.
  3565.  
  3566. arguments: (EVENT)
  3567. Fevent-button
  3568. Return the button-number of the given button-press or button-release event.
  3569.  
  3570. arguments: (EVENT)
  3571. Fevent-modifier-bits
  3572. Return a number representing the modifier keys which were down
  3573. when the given mouse or keyboard event was produced.
  3574. See also the function event-modifiers.
  3575.  
  3576. arguments: (EVENT)
  3577. Fevent-modifiers
  3578. Return a list of symbols, the names of the modifier keys
  3579. which were down when the given mouse or keyboard event was produced.
  3580. See also the function event-modifier-bits.
  3581.  
  3582. arguments: (EVENT)
  3583. Fevent-window-x-pixel
  3584. Return the X position in pixels of mouse event EVENT.
  3585. The value returned is relative to the window the event occurred in.
  3586. This will signal an error if the event is not a mouse event.
  3587. See also `mouse-event-p' and `event-x-pixel'.
  3588.  
  3589. arguments: (EVENT)
  3590. Fevent-window-y-pixel
  3591. Return the Y position in pixels of mouse event EVENT.
  3592. The value returned is relative to the window the event occurred in.
  3593. This will signal an error if the event is not a mouse event.
  3594. See also `mouse-event-p' and `event-y-pixel'.
  3595.  
  3596. arguments: (EVENT)
  3597. Fevent-x-pixel
  3598. Return the X position in pixels of mouse event EVENT.
  3599. The value returned is relative to the frame the event occurred in.
  3600. This will signal an error if the event is not a mouse event.
  3601. See also `mouse-event-p' and `event-window-x-pixel'.
  3602.  
  3603. arguments: (EVENT)
  3604. Fevent-y-pixel
  3605. Return the Y position in pixels of mouse event EVENT.
  3606. The value returned is relative to the frame the event occurred in.
  3607. This will signal an error if the event is not a mouse event.
  3608. See also `mouse-event-p' `event-window-y-pixel'.
  3609.  
  3610. arguments: (EVENT)
  3611. Fevent-over-text-area-p
  3612. Return t if the mouse event EVENT occurred over the text area of a window.
  3613. The modeline is not considered to be part of the text area.
  3614.  
  3615. arguments: (EVENT)
  3616. Fevent-over-modeline-p
  3617. Return t if the mouse event EVENT occurred over the modeline of a window.
  3618.  
  3619. arguments: (EVENT)
  3620. Fevent-over-border-p
  3621. Return t if the mouse event EVENT occurred over an internal border.
  3622.  
  3623. arguments: (EVENT)
  3624. Fevent-over-toolbar-p
  3625. Return t if the mouse event EVENT occurred over a toolbar.
  3626.  
  3627. arguments: (EVENT)
  3628. Fevent-channel
  3629. Return the channel that the event EVENT occurred on.
  3630. This will be a frame, device, console, or nil for some types
  3631. of events (e.g. eval events).
  3632.  
  3633. arguments: (EVENT)
  3634. Fevent-window
  3635. Return the window over which mouse event EVENT occurred.
  3636. This may be nil if the event occurred in the border or over a toolbar.
  3637. The modeline is considered to be within the window it describes.
  3638.  
  3639. arguments: (EVENT)
  3640. Fevent-point
  3641. Return the character position of the mouse event EVENT.
  3642. If the event did not occur over a window, or did not occur over text,
  3643. then this returns nil.  Otherwise, it returns a position in the buffer
  3644. visible in the event's window.
  3645.  
  3646. arguments: (EVENT)
  3647. Fevent-closest-point
  3648. Return the character position closest to the mouse event EVENT.
  3649. If the event did not occur over a window or over text, return the
  3650. closest point to the location of the event.  If the Y pixel position
  3651. overlaps a window and the X pixel position is to the left of that
  3652. window, the closest point is the beginning of the line containing the
  3653. Y position.  If the Y pixel position overlaps a window and the X pixel
  3654. position is to the right of that window, the closest point is the end
  3655. of the line containing the Y position.  If the Y pixel position is
  3656. above a window, return 0.  If it is below the last character in a window,
  3657. return the value of (window-end).
  3658.  
  3659. arguments: (EVENT)
  3660. Fevent-x
  3661. Return the X position of the mouse event EVENT in characters.
  3662. This is relative to the window the event occurred over.
  3663.  
  3664. arguments: (EVENT)
  3665. Fevent-y
  3666. Return the Y position of the mouse event EVENT in characters.
  3667. This is relative to the window the event occurred over.
  3668.  
  3669. arguments: (EVENT)
  3670. Fevent-modeline-position
  3671. Return the character position in the modeline that EVENT occurred over.
  3672. EVENT should be a mouse event.  If EVENT did not occur over a modeline,
  3673. nil is returned.  You can determine the actual character that the
  3674. event occurred over by looking in `generated-modeline-string' at the
  3675. returned character position.  Note that `generated-modeline-string'
  3676. is buffer-local, and you must use EVENT's buffer when retrieving
  3677. `generated-modeline-string' in order to get accurate results.
  3678.  
  3679. arguments: (EVENT)
  3680. Fevent-glyph
  3681. Return the glyph that the mouse event EVENT occurred over, or nil.
  3682.  
  3683. arguments: (EVENT)
  3684. Fevent-glyph-extent
  3685. Return the extent of the glyph that the mouse event EVENT occurred over.
  3686. If the event did not occur over a glyph, nil is returned.
  3687.  
  3688. arguments: (EVENT)
  3689. Fevent-glyph-x-pixel
  3690. Return the X pixel position of EVENT relative to the glyph it occurred over.
  3691. EVENT should be a mouse event.  If the event did not occur over a glyph,
  3692. nil is returned.
  3693.  
  3694. arguments: (EVENT)
  3695. Fevent-glyph-y-pixel
  3696. Return the Y pixel position of EVENT relative to the glyph it occurred over.
  3697. EVENT should be a mouse event.  If the event did not occur over a glyph,
  3698. nil is returned.
  3699.  
  3700. arguments: (EVENT)
  3701. Fevent-toolbar-button
  3702. Return the toolbar button that the mouse event EVENT occurred over.
  3703. If the event did not occur over a toolbar button, nil is returned.
  3704.  
  3705. arguments: (EVENT)
  3706. Fevent-process
  3707. Return the process of the given process-output event.
  3708.  
  3709. arguments: (EVENT)
  3710. Fevent-function
  3711. Return the callback function of EVENT.
  3712. EVENT should be a timeout, misc-user, or eval event.
  3713.  
  3714. arguments: (EVENT)
  3715. Fevent-object
  3716. Return the callback function argument of EVENT.
  3717. EVENT should be a timeout, misc-user, or eval event.
  3718.  
  3719. arguments: (EVENT)
  3720. Fevent-drag-and-drop-data
  3721. Return the Dnd data list of EVENT.
  3722. EVENT should be a dnd_drop event.
  3723.  
  3724. arguments: (EVENT)
  3725. Fevent-properties
  3726. Return a list of all of the properties of EVENT.
  3727. This is in the form of a property list (alternating keyword/value pairs).
  3728.  
  3729. arguments: (EVENT)
  3730. Vcharacter-set-property
  3731. A symbol used to look up the 8-bit character of a keysym.
  3732. To convert a keysym symbol to an 8-bit code, as when that key is
  3733. bound to self-insert-command, we will look up the property that this
  3734. variable names on the property list of the keysym-symbol.  The window-
  3735. system-specific code will set up appropriate properties and set this
  3736. variable.Flock-buffer
  3737. Lock FILE, if current buffer is modified.
  3738. FILE defaults to current buffer's visited file,
  3739. or else nothing is done if current buffer isn't visiting a file.
  3740.  
  3741. arguments: (&optional FN)
  3742. Funlock-buffer
  3743. Unlock the file visited in the current buffer,
  3744. if it should normally be locked.
  3745.  
  3746. arguments: ()
  3747. Ffile-locked-p
  3748. Return nil if the FILENAME is not locked,
  3749. t if it is locked by you, else a string of the name of the locker.
  3750.  
  3751. arguments: (&optional FN)
  3752. Vlock-directory
  3753. Don't change thisVsuperlock-file
  3754. Don't change thisFpopup-menu
  3755. Pop up the given menu.
  3756. A menu description is a list of menu items, strings, and submenus.
  3757.  
  3758. The first element of a menu must be a string, which is the name of the menu.
  3759. This is the string that will be displayed in the parent menu, if any.  For
  3760. toplevel menus, it is ignored.  This string is not displayed in the menu
  3761. itself.
  3762.  
  3763. If an element of a menu is a string, then that string will be presented in
  3764. the menu as unselectable text.
  3765.  
  3766. If an element of a menu is a string consisting solely of hyphens, then that
  3767. item will be presented as a solid horizontal line.
  3768.  
  3769. If an element of a menu is a list, it is treated as a submenu.  The name of
  3770. that submenu (the first element in the list) will be used as the name of the
  3771. item representing this menu on the parent.
  3772.  
  3773. Otherwise, the element must be a vector, which describes a menu item.
  3774. A menu item can have any of the following forms:
  3775.  
  3776.  [ "name" callback <active-p> ]
  3777.  [ "name" callback <active-p> "suffix" ]
  3778.  [ "name" callback :<keyword> <value>  :<keyword> <value> ... ]
  3779.  
  3780. The name is the string to display on the menu; it is filtered through the
  3781. resource database, so it is possible for resources to override what string
  3782. is actually displayed.
  3783.  
  3784. If the `callback' of a menu item is a symbol, then it must name a command.
  3785. It will be invoked with `call-interactively'.  If it is a list, then it is
  3786. evaluated with `eval'.
  3787.  
  3788. The possible keywords are this:
  3789.  
  3790.  :active   <form>    Same as <active-p> in the first two forms: the
  3791.                      expression is evaluated just before the menu is
  3792.                      displayed, and the menu will be selectable only if
  3793.                      the result is non-nil.
  3794.  
  3795.  :suffix   "string"  Same as "suffix" in the second form: the suffix is
  3796.                      appended to the displayed name, providing a convenient
  3797.                      way of adding the name of a command's ``argument'' to
  3798.                      the menu, like ``Kill Buffer NAME''.
  3799.  
  3800.  :keys     "string"  Normally, the keyboard equivalents of commands in
  3801.                      menus are displayed when the `callback' is a symbol.
  3802.                      This can be used to specify keys for more complex menu
  3803.                      items.  It is passed through `substitute-command-keys'
  3804.                      first.
  3805.  
  3806.  :style    <style>   Specifies what kind of object this menu item is:
  3807.  
  3808.                         nil     A normal menu item.
  3809.                         toggle  A toggle button.
  3810.                         radio   A radio button.
  3811.  
  3812.                      The only difference between toggle and radio buttons is
  3813.                      how they are displayed.  But for consistency, a toggle
  3814.                      button should be used when there is one option whose
  3815.                      value can be turned on or off, and radio buttons should
  3816.                      be used when there is a set of mutually exclusive
  3817.                      options.  When using a group of radio buttons, you
  3818.                      should arrange for no more than one to be marked as
  3819.                      selected at a time.
  3820.  
  3821.  :selected <form>    Meaningful only when STYLE is `toggle' or `radio'.
  3822.                      This specifies whether the button will be in the
  3823.                      selected or unselected state.
  3824.  
  3825. For example:
  3826.  
  3827.  [ "Save As..."    write-file  t ]
  3828.  [ "Revert Buffer" revert-buffer (buffer-modified-p) ]
  3829.  [ "Read Only"     toggle-read-only :style toggle :selected buffer-read-only ]
  3830.  
  3831. See menubar.el for many more examples.
  3832.  
  3833. arguments: (MENU-DESC &optional EVENT)
  3834. Fnormalize-menu-item-name
  3835. Convert a menu item name string into normal form.  Returns a new string.
  3836. Menu item names should be converted to normal form before being compared.
  3837.  
  3838. arguments: (NAME &optional BUFFER)
  3839. Vpopup-menu-titles
  3840. If true, popup menus will have title bars at the top.Vcurrent-menubar
  3841. The current menubar.  This may be buffer-local.
  3842.  
  3843. When the menubar is changed, the function `set-menubar-dirty-flag' has to
  3844. be called for the menubar to be updated on the frame.  See `set-menubar'
  3845. and `set-buffer-menubar'.
  3846.  
  3847. A menubar is a list of menus and menu-items.
  3848. A menu is a list of menu items, keyword-value pairs, strings, and submenus.
  3849.  
  3850. The first element of a menu must be a string, which is the name of the menu.
  3851. This is the string that will be displayed in the parent menu, if any.  For
  3852. toplevel menus, it is ignored.  This string is not displayed in the menu
  3853. itself.
  3854.  
  3855. Immediately following the name string of the menu, any of three
  3856. optional keyword-value pairs is permitted.
  3857.  
  3858. If an element of a menu (or menubar) is a string, then that string will be
  3859. presented as unselectable text.
  3860.  
  3861. If an element of a menu is a string consisting solely of hyphens, then that
  3862. item will be presented as a solid horizontal line.
  3863.  
  3864. If an element of a menu is a list, it is treated as a submenu.  The name of
  3865. that submenu (the first element in the list) will be used as the name of the
  3866. item representing this menu on the parent.
  3867.  
  3868. If an element of a menubar is `nil', then it is used to represent the
  3869. division between the set of menubar-items which are flushleft and those
  3870. which are flushright.
  3871.  
  3872. Otherwise, the element must be a vector, which describes a menu item.
  3873. A menu item can have any of the following forms:
  3874.  
  3875.  [ "name" callback <active-p> ]
  3876.  [ "name" callback <active-p> "suffix" ]
  3877.  [ "name" callback :<keyword> <value>  :<keyword> <value> ... ]
  3878.  
  3879. The name is the string to display on the menu; it is filtered through the
  3880. resource database, so it is possible for resources to override what string
  3881. is actually displayed.
  3882.  
  3883. If the `callback' of a menu item is a symbol, then it must name a command.
  3884. It will be invoked with `call-interactively'.  If it is a list, then it is
  3885. evaluated with `eval'.
  3886.  
  3887. The possible keywords are this:
  3888.  
  3889.  :active   <form>    Same as <active-p> in the first two forms: the
  3890.                      expression is evaluated just before the menu is
  3891.                      displayed, and the menu will be selectable only if
  3892.                      the result is non-nil.
  3893.  
  3894.  :suffix   "string"  Same as "suffix" in the second form: the suffix is
  3895.                      appended to the displayed name, providing a convenient
  3896.                      way of adding the name of a command's ``argument'' to
  3897.                      the menu, like ``Kill Buffer NAME''.
  3898.  
  3899.  :keys     "string"  Normally, the keyboard equivalents of commands in
  3900.                      menus are displayed when the `callback' is a symbol.
  3901.                      This can be used to specify keys for more complex menu
  3902.                      items.  It is passed through `substitute-command-keys'
  3903.                      first.
  3904.  
  3905.  :style    <style>   Specifies what kind of object this menu item is:
  3906.  
  3907.                         nil     A normal menu item.
  3908.                         toggle  A toggle button.
  3909.                         radio   A radio button.
  3910.                         button  A menubar button.
  3911.  
  3912.                      The only difference between toggle and radio buttons is
  3913.                      how they are displayed.  But for consistency, a toggle
  3914.                      button should be used when there is one option whose
  3915.                      value can be turned on or off, and radio buttons should
  3916.                      be used when there is a set of mutually exclusive
  3917.                      options.  When using a group of radio buttons, you
  3918.                      should arrange for no more than one to be marked as
  3919.                      selected at a time.
  3920.  
  3921.  :selected <form>    Meaningful only when STYLE is `toggle', `radio' or
  3922.                      `button'.  This specifies whether the button will be in
  3923.              the selected or unselected state.
  3924.  
  3925.  :included <form>    This can be used to control the visibility of a menu or
  3926.              menu item.  The form is evaluated and the menu or menu
  3927.              item is only displayed if the result is non-nil.
  3928.  
  3929.  :config  <symbol>   This is an efficient shorthand for
  3930.                  :included (memq symbol menubar-configuration)
  3931.                  See the variable `menubar-configuration'.
  3932.  
  3933.  :filter <function>  A menu filter can only be used in a menu item list.
  3934.              (i.e.:  not in a menu item itself).  It is used to
  3935.              sensitize or incrementally create a submenu only when
  3936.              it is selected by the user and not every time the
  3937.              menubar is activated.  The filter function is passed
  3938.              the list of menu items in the submenu and must return a
  3939.              list of menu items to be used for the menu.  It is
  3940.              called only when the menu is about to be displayed, so
  3941.              other menus may already be displayed.  Vile and
  3942.              terrible things will happen if a menu filter function
  3943.              changes the current buffer, window, or frame.  It
  3944.              also should not raise, lower, or iconify any frames.
  3945.              Basically, the filter function should have no
  3946.              side-effects.
  3947.  
  3948. For example:
  3949.  
  3950.  ("File"
  3951.   :filter file-menu-filter    ; file-menu-filter is a function that takes
  3952.                 ; one argument (a list of menu items) and
  3953.                 ; returns a list of menu items
  3954.   [ "Save As..."    write-file  t ]
  3955.   [ "Revert Buffer" revert-buffer (buffer-modified-p) ]
  3956.   [ "Read Only"     toggle-read-only :style toggle
  3957.               :selected buffer-read-only ]
  3958.   )
  3959.  
  3960. See x-menubar.el for many more examples.
  3961.  
  3962. After the menubar is clicked upon, but before any menus are popped up,
  3963. the functions on the `activate-menubar-hook' are invoked to make top-level
  3964. changes to the menus and menubar.  Note, however, that the use of menu
  3965. filters (using the :filter keyword) is usually a more efficient way to
  3966. dynamically alter or sensitize menus.Vactivate-menubar-hook
  3967. Function or functions called before a menubar menu is pulled down.
  3968. These functions are called with no arguments, and should interrogate and
  3969. modify the value of `current-menubar' as desired.
  3970.  
  3971. The functions on this hook are invoked after the mouse goes down, but before
  3972. the menu is mapped, and may be used to activate, deactivate, add, or delete
  3973. items from the menus.  However, it is probably the case that using a :filter
  3974. keyword in a submenu would be a more efficient way of updating menus.  See
  3975. the documentation of `current-menubar'.
  3976.  
  3977. These functions may return the symbol `t' to assert that they have made
  3978. no changes to the menubar.  If any other value is returned, the menubar is
  3979. recomputed.  If `t' is returned but the menubar has been changed, then the
  3980. changes may not show up right away.  Returning `nil' when the menubar has
  3981. not changed is not so bad; more computation will be done, but redisplay of
  3982. the menubar will still be performed optimally.Vmenubar-show-keybindings
  3983. If true, the menubar will display keyboard equivalents.
  3984. If false, only the command names will be displayed.Vmenubar-configuration
  3985. A list of symbols, against which the value of the :config tag for each
  3986. menubar item will be compared.  If a menubar item has a :config tag, then
  3987. it is omitted from the menubar if that tag is not a member of the
  3988. `menubar-configuration' list.Vmenubar-pointer-glyph
  3989. *The shape of the mouse-pointer when over the menubar.
  3990. This is a glyph; use `set-glyph-image' to change it.
  3991. If unspecified in a particular domain, the window-system-provided
  3992. default pointer is used.Vmenubar-visible-p
  3993. *Whether the menubar is visible.
  3994. This is a specifier; use `set-specifier' to change it.Fscrollbar-line-up
  3995. Function called when the line-up arrow on the scrollbar is clicked.
  3996. This is the little arrow at the top of the scrollbar.  One argument, the
  3997. scrollbar's window.  You can advise this function to change the scrollbar
  3998. behavior.
  3999.  
  4000. arguments: (WINDOW)
  4001. Fscrollbar-line-down
  4002. Function called when the line-down arrow on the scrollbar is clicked.
  4003. This is the little arrow at the bottom of the scrollbar.  One argument, the
  4004. scrollbar's window.  You can advise this function to change the scrollbar
  4005. behavior.
  4006.  
  4007. arguments: (WINDOW)
  4008. Fscrollbar-page-up
  4009. Function called when the user gives the "page-up" scrollbar action.
  4010. (The way this is done can vary from scrollbar to scrollbar.) One argument,
  4011. a cons containing the scrollbar's window and a value (#### document me!
  4012. This value is nil for Motif/Lucid scrollbars and a number for Athena
  4013. scrollbars).  You can advise this function to change the scrollbar
  4014. behavior.
  4015.  
  4016. arguments: (OBJECT)
  4017. Fscrollbar-page-down
  4018. Function called when the user gives the "page-down" scrollbar action.
  4019. (The way this is done can vary from scrollbar to scrollbar.) One argument,
  4020. a cons containing the scrollbar's window and a value (#### document me!
  4021. This value is nil for Motif/Lucid scrollbars and a number for Athena
  4022. scrollbars).  You can advise this function to change the scrollbar
  4023. behavior.
  4024.  
  4025. arguments: (OBJECT)
  4026. Fscrollbar-to-top
  4027. Function called when the user invokes the "to-top" scrollbar action.
  4028. The way this is done can vary from scrollbar to scrollbar, but
  4029. C-button1 on the up-arrow is very common. One argument, the
  4030. scrollbar's window.  You can advise this function to change the
  4031. scrollbar behavior.
  4032.  
  4033. arguments: (WINDOW)
  4034. Fscrollbar-to-bottom
  4035. Function called when the user invokes the "to-bottom" scrollbar action.
  4036. The way this is done can vary from scrollbar to scrollbar, but
  4037. C-button1 on the down-arrow is very common. One argument, the
  4038. scrollbar's window.  You can advise this function to change the
  4039. scrollbar behavior.
  4040.  
  4041. arguments: (WINDOW)
  4042. Fscrollbar-vertical-drag
  4043. Function called when the user drags the vertical scrollbar slider.
  4044. One argument, a cons containing the scrollbar's window and a value
  4045. between point-min and point-max.  You can advise this function to
  4046. change the scrollbar behavior.
  4047.  
  4048. arguments: (OBJECT)
  4049. Fscrollbar-set-hscroll
  4050. Sets WINDOW's hscroll position to VALUE.
  4051. This ensures that VALUE is in the proper range for the horizontal scrollbar.
  4052.  
  4053. arguments: (WINDOW VALUE)
  4054. Vscrollbar-pointer-glyph
  4055. *The shape of the mouse-pointer when over a scrollbar.
  4056. This is a glyph; use `set-glyph-image' to change it.
  4057. If unspecified in a particular domain, the window-system-provided
  4058. default pointer is used.Vscrollbar-width
  4059. *Width of vertical scrollbars.
  4060. This is a specifier; use `set-specifier' to change it.Vscrollbar-height
  4061. *Height of horizontal scrollbars.
  4062. This is a specifier; use `set-specifier' to change it.Ftoolbar-button-p
  4063. Return non-nil if OBJECT is a toolbar button.
  4064.  
  4065. arguments: (OBJECT)
  4066. Ftoolbar-button-callback
  4067. Return the callback function associated with the toolbar BUTTON.
  4068.  
  4069. arguments: (BUTTON)
  4070. Ftoolbar-button-help-string
  4071. Return the help string function associated with the toolbar BUTTON.
  4072.  
  4073. arguments: (BUTTON)
  4074. Ftoolbar-button-enabled-p
  4075. Return t if BUTTON is active.
  4076.  
  4077. arguments: (BUTTON)
  4078. Fset-toolbar-button-down-flag
  4079. Don't touch.
  4080.  
  4081. arguments: (BUTTON FLAG)
  4082. Fset-default-toolbar-position
  4083. Set the position that the `default-toolbar' will be displayed at.
  4084. Valid positions are 'top, 'bottom, 'left and 'right.
  4085. See `default-toolbar-position'.
  4086.  
  4087. arguments: (POSITION)
  4088. Fdefault-toolbar-position
  4089. Return the position that the `default-toolbar' will be displayed at.
  4090. The `default-toolbar' will only be displayed here if the corresponding
  4091. position-specific toolbar specifier does not provide a value.
  4092.  
  4093. arguments: ()
  4094. Fcheck-toolbar-button-syntax
  4095. Verify the syntax of entry BUTTON in a toolbar description list.
  4096. If you want to verify the syntax of a toolbar description list as a
  4097. whole, use `check-valid-instantiator' with a specifier type of 'toolbar.
  4098.  
  4099. arguments: (BUTTON &optional NO-ERROR)
  4100. Ftoolbar-specifier-p
  4101. Return non-nil if OBJECT is a toolbar specifier.
  4102. Toolbar specifiers are used to specify the format of a toolbar.
  4103. The values of the variables `default-toolbar', `top-toolbar',
  4104. `left-toolbar', `right-toolbar', and `bottom-toolbar' are always
  4105. toolbar specifiers.
  4106.  
  4107. Valid toolbar instantiators are called "toolbar descriptors"
  4108. and are lists of vectors.  See `default-toolbar' for a description
  4109. of the exact format.
  4110.  
  4111. arguments: (OBJECT)
  4112. Vdefault-toolbar
  4113. Specifier for a fallback toolbar.
  4114. Use `set-specifier' to change this.
  4115.  
  4116. The position of this toolbar is specified in the function
  4117. `default-toolbar-position'.  If the corresponding position-specific
  4118. toolbar (e.g. `top-toolbar' if `default-toolbar-position' is 'top)
  4119. does not specify a toolbar in a particular domain (usually a window),
  4120. then the value of `default-toolbar' in that domain, if any, will be
  4121. used instead.
  4122.  
  4123. Note that the toolbar at any particular position will not be
  4124. displayed unless its visibility flag is true and its thickness
  4125. (width or height, depending on orientation) is non-zero.  The
  4126. visibility is controlled by the specifiers `top-toolbar-visible-p',
  4127. `bottom-toolbar-visible-p', `left-toolbar-visible-p', and
  4128. `right-toolbar-visible-p', and the thickness is controlled by the
  4129. specifiers `top-toolbar-height', `bottom-toolbar-height',
  4130. `left-toolbar-width', and `right-toolbar-width'.
  4131.  
  4132. Note that one of the four visibility specifiers inherits from
  4133. `default-toolbar-visibility' and one of the four thickness
  4134. specifiers inherits from either `default-toolbar-width' or
  4135. `default-toolbar-height' (depending on orientation), just
  4136. like for the toolbar description specifiers (e.g. `top-toolbar')
  4137. mentioned above.
  4138.  
  4139. Therefore, if you are setting `default-toolbar', you should control
  4140. the visibility and thickness using `default-toolbar-visible-p',
  4141. `default-toolbar-width', and `default-toolbar-height', rather than
  4142. using position-specific specifiers.  That way, you will get sane
  4143. behavior if the user changes the default toolbar position.
  4144.  
  4145. The format of the instantiator for a toolbar is a list of
  4146. toolbar-button-descriptors.  Each toolbar-button-descriptor
  4147. is a vector in one of the following formats:
  4148.  
  4149.   [GLYPH-LIST FUNCTION ENABLED-P HELP] or
  4150.   [:style 2D-OR-3D] or
  4151.   [:style 2D-OR-3D :size WIDTH-OR-HEIGHT] or
  4152.   [:size WIDTH-OR-HEIGHT :style 2D-OR-3D]
  4153.  
  4154. Optionally, one of the toolbar-button-descriptors may be nil
  4155. instead of a vector; this signifies the division between
  4156. the toolbar buttons that are to be displayed flush-left,
  4157. and the buttons to be displayed flush-right.
  4158.  
  4159. The first vector format above specifies a normal toolbar button;
  4160. the others specify blank areas in the toolbar.
  4161.  
  4162. For the first vector format:
  4163.  
  4164. -- GLYPH-LIST should be a list of one to six glyphs (as created by
  4165.    `make-glyph') or a symbol whose value is such a list.  The first
  4166.    glyph, which must be provided, is the glyph used to display the
  4167.    toolbar button when it is in the "up" (not pressed) state.  The
  4168.    optional second glyph is for displaying the button when it is in
  4169.    the "down" (pressed) state.  The optional third glyph is for when
  4170.    the button is disabled.  The optional fourth, fifth and sixth glyphs
  4171.    are used to specify captioned versions for the up, down and disabled
  4172.    states respectively.  The function `toolbar-make-button-list' is
  4173.    useful in creating these glyph lists.  The specifier variable
  4174.    `toolbar-buttons-captioned-p' controls which glyphs are actually used.
  4175.  
  4176. -- Even if you do not provide separate down-state and disabled-state
  4177.    glyphs, the user will still get visual feedback to indicate which
  4178.    state the button is in.  Buttons in the up-state are displayed
  4179.    with a shadowed border that gives a raised appearance to the
  4180.    button.  Buttons in the down-state are displayed with shadows that
  4181.    give a recessed appearance.  Buttons in the disabled state are
  4182.    displayed with no shadows, giving a 2-d effect.
  4183.  
  4184. -- If some of the toolbar glyphs are not provided, they inherit as follows:
  4185.  
  4186.      UP:                up
  4187.      DOWN:              down -> up
  4188.      DISABLED:          disabled -> up
  4189.      CAP-UP:            cap-up -> up
  4190.      CAP-DOWN:          cap-down -> cap-up -> down -> up
  4191.      CAP-DISABLED:      cap-disabled -> cap-up -> disabled -> up
  4192.  
  4193. -- The second element FUNCTION is a function to be called when the
  4194.    toolbar button is activated (i.e. when the mouse is released over
  4195.    the toolbar button, if the press occurred in the toolbar).  It
  4196.    can be any form accepted by `call-interactively', since this is
  4197.    how it is invoked.
  4198.  
  4199. -- The third element ENABLED-P specifies whether the toolbar button
  4200.    is enabled (disabled buttons do nothing when they are activated,
  4201.    and are displayed differently; see above).  It should be either
  4202.    a boolean or a form that evaluates to a boolean.
  4203.  
  4204. -- The fourth element HELP, if non-nil, should be a string.  This
  4205.    string is displayed in the echo area when the mouse passes over
  4206.    the toolbar button.
  4207.  
  4208. For the other vector formats (specifying blank areas of the toolbar):
  4209.  
  4210. -- 2D-OR-3D should be one of the symbols '2d or '3d, indicating
  4211.    whether the area is displayed with shadows (giving it a raised,
  4212.    3-d appearance) or without shadows (giving it a flat appearance).
  4213.  
  4214. -- WIDTH-OR-HEIGHT specifies the length, in pixels, of the blank
  4215.    area.  If omitted, it defaults to a device-specific value
  4216.    (8 pixels for X devices).Vtop-toolbar
  4217. Specifier for the toolbar at the top of the frame.
  4218. Use `set-specifier' to change this.
  4219. See `default-toolbar' for a description of a valid toolbar instantiator.Vbottom-toolbar
  4220. Specifier for the toolbar at the bottom of the frame.
  4221. Use `set-specifier' to change this.
  4222. See `default-toolbar' for a description of a valid toolbar instantiator.
  4223.  
  4224. Note that, unless the `default-toolbar-position' is `bottom', by
  4225. default the height of the bottom toolbar (controlled by
  4226. `bottom-toolbar-height') is 0; thus, a bottom toolbar will not be
  4227. displayed even if you provide a value for `bottom-toolbar'.Vleft-toolbar
  4228. Specifier for the toolbar at the left edge of the frame.
  4229. Use `set-specifier' to change this.
  4230. See `default-toolbar' for a description of a valid toolbar instantiator.
  4231.  
  4232. Note that, unless the `default-toolbar-position' is `left', by
  4233. default the height of the left toolbar (controlled by
  4234. `left-toolbar-width') is 0; thus, a left toolbar will not be
  4235. displayed even if you provide a value for `left-toolbar'.Vright-toolbar
  4236. Specifier for the toolbar at the right edge of the frame.
  4237. Use `set-specifier' to change this.
  4238. See `default-toolbar' for a description of a valid toolbar instantiator.
  4239.  
  4240. Note that, unless the `default-toolbar-position' is `right', by
  4241. default the height of the right toolbar (controlled by
  4242. `right-toolbar-width') is 0; thus, a right toolbar will not be
  4243. displayed even if you provide a value for `right-toolbar'.Vdefault-toolbar-height
  4244. *Height of the default toolbar, if it's oriented horizontally.
  4245. This is a specifier; use `set-specifier' to change it.
  4246.  
  4247. The position of the default toolbar is specified by the function
  4248. `set-default-toolbar-position'.  If the corresponding position-specific
  4249. toolbar thickness specifier (e.g. `top-toolbar-height' if
  4250. `default-toolbar-position' is 'top) does not specify a thickness in a
  4251. particular domain (a window or a frame), then the value of
  4252. `default-toolbar-height' or `default-toolbar-width' (depending on the
  4253. toolbar orientation) in that domain, if any, will be used instead.
  4254.  
  4255. Note that `default-toolbar-height' is only used when
  4256. `default-toolbar-position' is 'top or 'bottom, and `default-toolbar-width'
  4257. is only used when `default-toolbar-position' is 'left or 'right.
  4258.  
  4259. Note that all of the position-specific toolbar thickness specifiers
  4260. have a fallback value of zero when they do not correspond to the
  4261. default toolbar.  Therefore, you will have to set a non-zero thickness
  4262. value if you want a position-specific toolbar to be displayed.
  4263.  
  4264. Internally, toolbar thickness specifiers are instantiated in both
  4265. window and frame domains, for different purposes.  The value in the
  4266. domain of a frame's selected window specifies the actual toolbar
  4267. thickness that you will see in that frame.  The value in the domain of
  4268. a frame itself specifies the toolbar thickness that is used in frame
  4269. geometry calculations.
  4270.  
  4271. Thus, for example, if you set the frame width to 80 characters and the
  4272. left toolbar width for that frame to 68 pixels, then the frame will
  4273. be sized to fit 80 characters plus a 68-pixel left toolbar.  If you
  4274. then set the left toolbar width to 0 for a particular buffer (or if
  4275. that buffer does not specify a left toolbar or has a nil value
  4276. specified for `left-toolbar-visible-p'), you will find that, when
  4277. that buffer is displayed in the selected window, the window will have
  4278. a width of 86 or 87 characters -- the frame is sized for a 68-pixel
  4279. left toolbar but the selected window specifies that the left toolbar
  4280. is not visible, so it is expanded to take up the slack.Vdefault-toolbar-width
  4281. *Width of the default toolbar, if it's oriented vertically.
  4282. This is a specifier; use `set-specifier' to change it.
  4283.  
  4284. See `default-toolbar-height' for more information.Vtop-toolbar-height
  4285. *Height of the top toolbar.
  4286. This is a specifier; use `set-specifier' to change it.
  4287.  
  4288. See `default-toolbar-height' for more information.Vbottom-toolbar-height
  4289. *Height of the bottom toolbar.
  4290. This is a specifier; use `set-specifier' to change it.
  4291.  
  4292. See `default-toolbar-height' for more information.Vleft-toolbar-width
  4293. *Width of left toolbar.
  4294. This is a specifier; use `set-specifier' to change it.
  4295.  
  4296. See `default-toolbar-height' for more information.Vright-toolbar-width
  4297. *Width of right toolbar.
  4298. This is a specifier; use `set-specifier' to change it.
  4299.  
  4300. See `default-toolbar-height' for more information.Vdefault-toolbar-visible-p
  4301. *Whether the default toolbar is visible.
  4302. This is a specifier; use `set-specifier' to change it.
  4303.  
  4304. The position of the default toolbar is specified by the function
  4305. `set-default-toolbar-position'.  If the corresponding position-specific
  4306. toolbar visibility specifier (e.g. `top-toolbar-visible-p' if
  4307. `default-toolbar-position' is 'top) does not specify a visible-p value
  4308. in a particular domain (a window or a frame), then the value of
  4309. `default-toolbar-visible-p' in that domain, if any, will be used
  4310. instead.
  4311.  
  4312. Both window domains and frame domains are used internally, for
  4313. different purposes.  The distinction here is exactly the same as
  4314. for thickness specifiers; see `default-toolbar-height' for more
  4315. information.
  4316.  
  4317. `default-toolbar-visible-p' and all of the position-specific toolbar
  4318. visibility specifiers have a fallback value of true.Vtop-toolbar-visible-p
  4319. *Whether the top toolbar is visible.
  4320. This is a specifier; use `set-specifier' to change it.
  4321.  
  4322. See `default-toolbar-visible-p' for more information.Vbottom-toolbar-visible-p
  4323. *Whether the bottom toolbar is visible.
  4324. This is a specifier; use `set-specifier' to change it.
  4325.  
  4326. See `default-toolbar-visible-p' for more information.Vleft-toolbar-visible-p
  4327. *Whether the left toolbar is visible.
  4328. This is a specifier; use `set-specifier' to change it.
  4329.  
  4330. See `default-toolbar-visible-p' for more information.Vright-toolbar-visible-p
  4331. *Whether the right toolbar is visible.
  4332. This is a specifier; use `set-specifier' to change it.
  4333.  
  4334. See `default-toolbar-visible-p' for more information.Vtoolbar-buttons-captioned-p
  4335. *Whether the toolbar buttons are captioned.
  4336. This will only have a visible effect for those toolbar buttons which had
  4337. captioned versions specified.
  4338. This is a specifier; use `set-specifier' to change it.Fpopup-dialog-box
  4339. Pop up a dialog box.
  4340. A dialog box description is a list.
  4341.  
  4342. The first element of a dialog box must be a string, which is the title or
  4343. question.
  4344.  
  4345. The rest of the elements are descriptions of the dialog box's buttons.
  4346. Each of these is a vector, the syntax of which is essentially the same as
  4347. that of popup menu items.  They may have any of the following forms:
  4348.  
  4349.  [ "name" callback <active-p> ]
  4350.  [ "name" callback <active-p> "suffix" ]
  4351.  [ "name" callback :<keyword> <value>  :<keyword> <value> ... ]
  4352.  
  4353. The name is the string to display on the button; it is filtered through the
  4354. resource database, so it is possible for resources to override what string
  4355. is actually displayed.
  4356.  
  4357. If the `callback' of a button is a symbol, then it must name a command.
  4358. It will be invoked with `call-interactively'.  If it is a list, then it is
  4359. evaluated with `eval'.
  4360.  
  4361. One (and only one) of the buttons may be `nil'.  This marker means that all
  4362. following buttons should be flushright instead of flushleft.
  4363.  
  4364. Though the keyword/value syntax is supported for dialog boxes just as in
  4365. popup menus, the only keyword which is both meaningful and fully implemented
  4366. for dialog box buttons is `:active'.
  4367.  
  4368. arguments: (DBOX-DESC)
  4369. Fpopup-up-p
  4370. Return t if a popup menu or dialog box is up, nil otherwise.
  4371. See `popup-menu' and `popup-dialog-box'.
  4372.  
  4373. arguments: ()
  4374. Vmenu-no-selection-hook
  4375. Function or functions to call when a menu or dialog box is dismissed
  4376. without a selection having been made.Fdefine-word-pattern
  4377. Don't call this function directly, instead use 'define-word' which
  4378. accept a pattern compiled by 'regexp-compile' with word-option t.
  4379.  
  4380. arguments: (PATTERN)
  4381. Vre-short-flag
  4382. *T means regexp search success when the shortest match is found.Fexecute-ccl-program
  4383. Execute CCL-PROGRAM with registers initialized by STATUS.
  4384. CCL-PROGRAM is a vector of compiled CCL code created by `ccl-compile'.
  4385. STATUS must be a vector of nine values, specifying the initial value
  4386.  for the R0, R1 .. R7 registers and for the instruction counter IC.
  4387. A nil value for a register initializer causes the register to be set
  4388. to 0.  A nil value for the IC initializer causes execution to start
  4389.  at the beginning of the program.
  4390. When the program is done, STATUS is modified (by side-effect) to contain
  4391.  the ending values for the corresponding registers and IC.
  4392.  
  4393. arguments: (CCL-PROGRAM STATUS)
  4394. Fexecute-ccl-program-string
  4395. Execute CCL-PROGRAM with initial STATUS on STRING.
  4396. CCL-PROGRAM is a vector of compiled CCL code created by `ccl-compile'.
  4397. STATUS must be a vector of nine values, specifying the initial value
  4398.  for the R0, R1 .. R7 registers and for the instruction counter IC.
  4399. A nil value for a register initializer causes the register to be set
  4400. to 0.  A nil value for the IC initializer causes execution to start
  4401.  at the beginning of the program.
  4402. When the program is done, STATUS is modified (by side-effect) to contain
  4403.  the ending values for the corresponding registers and IC.
  4404. Returns the resulting string.
  4405.  
  4406. arguments: (CCL-PROGRAM STATUS STR)
  4407. Fccl-reset-elapsed-time
  4408. Reset the internal value which holds the time elapsed by CCL interpreter.
  4409.  
  4410. arguments: ()
  4411. Fccl-elapsed-time
  4412. Return the time elapsed by CCL interpreter as cons of user and system time.
  4413. This measures processor time, not real time.  Both values are floating point
  4414. numbers measured in seconds.  If only one overall value can be determined,
  4415. the return value will be a cons of that value and 0.
  4416.  
  4417. arguments: ()
  4418. Fcharsetp
  4419. Return non-nil if OBJECT is a charset.
  4420.  
  4421. arguments: (OBJECT)
  4422. Ffind-charset
  4423. Retrieve the charset of the given name.
  4424. If CHARSET-OR-NAME is a charset object, it is simply returned.
  4425. Otherwise, CHARSET-OR-NAME should be a symbol.  If there is no such charset,
  4426. nil is returned.  Otherwise the associated charset object is returned.
  4427.  
  4428. arguments: (CHARSET-OR-NAME)
  4429. Fget-charset
  4430. Retrieve the charset of the given name.
  4431. Same as `find-charset' except an error is signalled if there is no such
  4432. charset instead of returning nil.
  4433.  
  4434. arguments: (NAME)
  4435. Fcharset-list
  4436. Return a list of the names of all defined charsets.
  4437.  
  4438. arguments: ()
  4439. Fcharset-name
  4440. Return the name of the given charset.
  4441.  
  4442. arguments: (CHARSET)
  4443. Fmake-charset
  4444. Define a new character set.
  4445. This function is for use with Mule support.
  4446. NAME is a symbol, the name by which the character set is normally referred.
  4447. DOC-STRING is a string describing the character set.
  4448. PROPS is a property list, describing the specific nature of the
  4449. character set.  Recognized properties are:
  4450.  
  4451. 'registry    A regular expression matching the font registry field for
  4452.         this character set.
  4453. 'dimension    Number of octets used to index a character in this charset.
  4454.         Either 1 or 2.  Defaults to 1.
  4455. 'columns    Number of columns used to display a character in this charset.
  4456.         Only used in TTY mode. (Under X, the actual width of a
  4457.         character can be derived from the font used to display the
  4458.         characters.) If unspecified, defaults to the dimension
  4459.         (this is almost    always the correct value).
  4460. 'chars        Number of characters in each dimension (94 or 96).
  4461.         Defaults to 94.  Note that if the dimension is 2, the
  4462.         character set thus described is 94x94 or 96x96.
  4463. 'final        Final byte of ISO 2022 escape sequence.  Must be
  4464.         supplied.  Each combination of (DIMENSION, CHARS) defines a
  4465.         separate namespace for final bytes.  Note that ISO
  4466.         2022 restricts the final byte to the range
  4467.         0x30 - 0x7E if dimension == 1, and 0x30 - 0x5F if
  4468.         dimension == 2.  Note also that final bytes in the range
  4469.         0x30 - 0x3F are reserved for user-defined (not official)
  4470.         character sets.
  4471. 'graphic    0 (use left half of font on output) or 1 (use right half
  4472.         of font on output).  Defaults to 0.  For example, for
  4473.         a font whose registry is ISO8859-1, the left half
  4474.         (octets 0x20 - 0x7F) is the `ascii' character set, while
  4475.         the right half (octets 0xA0 - 0xFF) is the `latin-1'
  4476.         character set.  With 'graphic set to 0, the octets
  4477.         will have their high bit cleared; with it set to 1,
  4478.         the octets will have their high bit set.
  4479. 'direction    'l2r (left-to-right) or 'r2l (right-to-left).
  4480.         Defaults to 'l2r.
  4481. 'ccl-program    A compiled CCL program used to convert a character in
  4482.         this charset into an index into the font.  This is in
  4483.         addition to the 'graphic property.  The CCL program
  4484.         is passed the octets of the character, with the high
  4485.         bit cleared and set depending upon whether the value
  4486.         of the 'graphic property is 0 or 1.
  4487.  
  4488. arguments: (NAME DOC-STRING PROPS)
  4489. Fmake-reverse-direction-charset
  4490. Make a charset equivalent to CHARSET but which goes in the opposite direction.
  4491. NEW-NAME is the name of the new charset.  Return the new charset.
  4492.  
  4493. arguments: (CHARSET NEW-NAME)
  4494. Fcharset-reverse-direction-charset
  4495. Return the reverse-direction charset parallel to CHARSET, if any.
  4496. This is the charset with the same properties (in particular, the same
  4497. dimension, number of characters per dimension, and final byte) as
  4498. CHARSET but whose characters are displayed in the opposite direction.
  4499.  
  4500. arguments: (CHARSET)
  4501. Fcharset-from-attributes
  4502. Return a charset with the given DIMENSION, CHARS, FINAL, and DIRECTION.
  4503. If DIRECTION is omitted, both directions will be checked (left-to-right
  4504. will be returned if character sets exist for both directions).
  4505.  
  4506. arguments: (DIMENSION CHARS FINAL &optional DIRECTION)
  4507. Fcharset-doc-string
  4508. Return doc string of CHARSET.
  4509.  
  4510. arguments: (CHARSET)
  4511. Fcharset-dimension
  4512. Return dimension of CHARSET.
  4513.  
  4514. arguments: (CHARSET)
  4515. Fcharset-property
  4516. Return property PROP of CHARSET.
  4517. Recognized properties are those listed in `make-charset', as well as
  4518. 'name and 'doc-string.
  4519.  
  4520. arguments: (CHARSET PROP)
  4521. Fset-charset-ccl-program
  4522. Set the 'ccl-program property of CHARSET to CCL-PROGRAM.
  4523.  
  4524. arguments: (CHARSET CCL-PROGRAM)
  4525. Fset-charset-registry
  4526. Set the 'registry property of CHARSET to REGISTRY.
  4527.  
  4528. arguments: (CHARSET REGISTRY)
  4529. Fmake-char
  4530. Make a multi-byte character from CHARSET and octets ARG1 and ARG2.
  4531.  
  4532. arguments: (CHARSET ARG1 &optional ARG2)
  4533. Fchar-charset
  4534. Return the character set of char CH.
  4535.  
  4536. arguments: (CH)
  4537. Fchar-octet
  4538. Return the octet numbered N (should be 0 or 1) of char CH.
  4539. N defaults to 0 if omitted.
  4540.  
  4541. arguments: (CH &optional N)
  4542. Fmake-composite-char
  4543. Convert a string into a single composite character.
  4544. The character is the result of overstriking all the characters in
  4545. the string.
  4546.  
  4547. arguments: (STRING)
  4548. Fcomposite-char-string
  4549. Return a string of the characters comprising a composite character.
  4550.  
  4551. arguments: (CH)
  4552. Fcoding-system-p
  4553. T if OBJECT is a coding system.
  4554. A coding system is an object that defines how text containing multiple
  4555. character sets is encoded into a stream of (typically 8-bit) bytes.
  4556. The coding system is used to decode the stream into a series of
  4557. characters (which may be from multiple charsets) when the text is read
  4558. from a file or process, and is used to encode the text back into the
  4559. same format when it is written out to a file or process.
  4560.  
  4561. For example, many ISO2022-compliant coding systems (such as Compound
  4562. Text, which is used for inter-client data under the X Window System)
  4563. use escape sequences to switch between different charsets -- Japanese
  4564. Kanji, for example, is invoked with "ESC $ ( B"; ASCII is invoked
  4565. with "ESC ( B"; and Cyrillic is invoked with "ESC - L".  See
  4566. `make-coding-system' for more information.
  4567.  
  4568. Coding systems are normally identified using a symbol, and the
  4569. symbol is accepted in place of the actual coding system object whenever
  4570. a coding system is called for. (This is similar to how faces work.)
  4571.  
  4572. arguments: (OBJECT)
  4573. Ffind-coding-system
  4574. Retrieve the coding system of the given name.
  4575.  
  4576. If CODING-SYSTEM-OR-NAME is a coding-system object, it is simply
  4577. returned.  Otherwise, CODING-SYSTEM-OR-NAME should be a symbol.
  4578. If there is no such coding system, nil is returned.  Otherwise the
  4579. associated coding system object is returned.
  4580.  
  4581. arguments: (CODING-SYSTEM-OR-NAME)
  4582. Fget-coding-system
  4583. Retrieve the coding system of the given name.
  4584. Same as `find-coding-system' except that if there is no such
  4585. coding system, an error is signaled instead of returning nil.
  4586.  
  4587. arguments: (NAME)
  4588. Fcoding-system-list
  4589. Return a list of the names of all defined coding systems.
  4590.  
  4591. arguments: ()
  4592. Fcoding-system-name
  4593. Return the name of the given coding system.
  4594.  
  4595. arguments: (CODING-SYSTEM)
  4596. Fmake-coding-system
  4597. Register symbol NAME as a coding system.
  4598.  
  4599. TYPE describes the conversion method used and should be one of
  4600.  
  4601. nil or 'undecided
  4602.      Automatic conversion.  XEmacs attempts to detect the coding system
  4603.      used in the file.
  4604. 'no-conversion
  4605.      No conversion.  Use this for binary files and such.  On output,
  4606.      graphic characters that are not in ASCII or Latin-1 will be
  4607.      replaced by a ?. (For a no-conversion-encoded buffer, these
  4608.      characters will only be present if you explicitly insert them.)
  4609. 'shift-jis
  4610.      Shift-JIS (a Japanese encoding commonly used in PC operating systems).
  4611. 'iso2022
  4612.      Any ISO2022-compliant encoding.  Among other things, this includes
  4613.      JIS (the Japanese encoding commonly used for e-mail), EUC (the
  4614.      standard Unix encoding for Japanese and other languages), and
  4615.      Compound Text (the encoding used in X11).  You can specify more
  4616.      specific information about the conversion with the FLAGS argument.
  4617. 'big5
  4618.      Big5 (the encoding commonly used for Taiwanese).
  4619. 'ccl
  4620.      The conversion is performed using a user-written pseudo-code
  4621.      program.  CCL (Code Conversion Language) is the name of this
  4622.      pseudo-code.
  4623. 'internal
  4624.      Write out or read in the raw contents of the memory representing
  4625.      the buffer's text.  This is primarily useful for debugging
  4626.      purposes, and is only enabled when XEmacs has been compiled with
  4627.      DEBUG_XEMACS defined (via the --debug configure option).
  4628.      WARNING: Reading in a file using 'internal conversion can result
  4629.      in an internal inconsistency in the memory representing a
  4630.      buffer's text, which will produce unpredictable results and may
  4631.      cause XEmacs to crash.  Under normal circumstances you should
  4632.      never use 'internal conversion.
  4633.  
  4634. DOC-STRING is a string describing the coding system.
  4635.  
  4636. PROPS is a property list, describing the specific nature of the
  4637. character set.  Recognized properties are:
  4638.  
  4639. 'mnemonic
  4640.      String to be displayed in the modeline when this coding system is
  4641.      active.
  4642.  
  4643. 'eol-type
  4644.      End-of-line conversion to be used.  It should be one of
  4645.  
  4646.     nil
  4647.         Automatically detect the end-of-line type (LF, CRLF,
  4648.         or CR).  Also generate subsidiary coding systems named
  4649.         `NAME-unix', `NAME-dos', and `NAME-mac', that are
  4650.         identical to this coding system but have an EOL-TYPE
  4651.         value of 'lf, 'crlf, and 'cr, respectively.
  4652.     'lf
  4653.         The end of a line is marked externally using ASCII LF.
  4654.         Since this is also the way that XEmacs represents an
  4655.         end-of-line internally, specifying this option results
  4656.         in no end-of-line conversion.  This is the standard
  4657.         format for Unix text files.
  4658.     'crlf
  4659.         The end of a line is marked externally using ASCII
  4660.         CRLF.  This is the standard format for MS-DOS text
  4661.         files.
  4662.     'cr
  4663.         The end of a line is marked externally using ASCII CR.
  4664.         This is the standard format for Macintosh text files.
  4665.     t
  4666.         Automatically detect the end-of-line type but do not
  4667.         generate subsidiary coding systems.  (This value is
  4668.         converted to nil when stored internally, and
  4669.         `coding-system-property' will return nil.)
  4670.  
  4671. 'post-read-conversion
  4672.      Function called after a file has been read in, to perform the
  4673.      decoding.  Called with two arguments, BEG and END, denoting
  4674.      a region of the current buffer to be decoded.
  4675.  
  4676. 'pre-write-conversion
  4677.      Function called before a file is written out, to perform the
  4678.      encoding.  Called with two arguments, BEG and END, denoting
  4679.      a region of the current buffer to be encoded.
  4680.  
  4681.  
  4682. The following additional properties are recognized if TYPE is 'iso2022:
  4683.  
  4684. 'charset-g0
  4685. 'charset-g1
  4686. 'charset-g2
  4687. 'charset-g3
  4688.      The character set initially designated to the G0 - G3 registers.
  4689.      The value should be one of
  4690.  
  4691.           -- A charset object (designate that character set)
  4692.       -- nil (do not ever use this register)
  4693.       -- t (no character set is initially designated to
  4694.         the register, but may be later on; this automatically
  4695.         sets the corresponding `force-g*-on-output' property)
  4696.  
  4697. 'force-g0-on-output
  4698. 'force-g1-on-output
  4699. 'force-g2-on-output
  4700. 'force-g2-on-output
  4701.      If non-nil, send an explicit designation sequence on output before
  4702.      using the specified register.
  4703.  
  4704. 'short
  4705.      If non-nil, use the short forms "ESC $ @", "ESC $ A", and
  4706.      "ESC $ B" on output in place of the full designation sequences
  4707.      "ESC $ ( @", "ESC $ ( A", and "ESC $ ( B".
  4708.  
  4709. 'no-ascii-eol
  4710.      If non-nil, don't designate ASCII to G0 at each end of line on output.
  4711.      Setting this to non-nil also suppresses other state-resetting that
  4712.      normally happens at the end of a line.
  4713.  
  4714. 'no-ascii-cntl
  4715.      If non-nil, don't designate ASCII to G0 before control chars on output.
  4716.  
  4717. 'seven
  4718.      If non-nil, use 7-bit environment on output.  Otherwise, use 8-bit
  4719.      environment.
  4720.  
  4721. 'lock-shift
  4722.      If non-nil, use locking-shift (SO/SI) instead of single-shift
  4723.      or designation by escape sequence.
  4724.  
  4725. 'no-iso6429
  4726.      If non-nil, don't use ISO6429's direction specification.
  4727.  
  4728. 'escape-quoted
  4729.      If non-nil, literal control characters that are the same as
  4730.      the beginning of a recognized ISO2022 or ISO6429 escape sequence
  4731.      (in particular, ESC (0x1B), SO (0x0E), SI (0x0F), SS2 (0x8E),
  4732.      SS3 (0x8F), and CSI (0x9B)) are "quoted" with an escape character
  4733.      so that they can be properly distinguished from an escape sequence.
  4734.      (Note that doing this results in a non-portable encoding.) This
  4735.      encoding flag is used for byte-compiled files.  Note that ESC
  4736.      is a good choice for a quoting character because there are no
  4737.      escape sequences whose second byte is a character from the Control-0
  4738.      or Control-1 character sets; this is explicitly disallowed by the
  4739.      ISO2022 standard.
  4740.  
  4741. 'input-charset-conversion
  4742.      A list of conversion specifications, specifying conversion of
  4743.      characters in one charset to another when decoding is performed.
  4744.      Each specification is a list of two elements: the source charset,
  4745.      and the destination charset.
  4746.  
  4747. 'output-charset-conversion
  4748.      A list of conversion specifications, specifying conversion of
  4749.      characters in one charset to another when encoding is performed.
  4750.      The form of each specification is the same as for
  4751.      'input-charset-conversion.
  4752.  
  4753.  
  4754. The following additional properties are recognized (and required)
  4755. if TYPE is 'ccl:
  4756.  
  4757. 'decode
  4758.      CCL program used for decoding (converting to internal format).
  4759.  
  4760. 'encode
  4761.      CCL program used for encoding (converting to external format).
  4762.  
  4763. arguments: (NAME TYPE &optional DOC-STRING PROPS)
  4764. Fcopy-coding-system
  4765. Copy OLD-CODING-SYSTEM to NEW-NAME.
  4766. If NEW-NAME does not name an existing coding system, a new one will
  4767. be created.
  4768.  
  4769. arguments: (OLD-CODING-SYSTEM NEW-NAME)
  4770. Fsubsidiary-coding-system
  4771. Return the subsidiary coding system of CODING-SYSTEM with eol type EOL-TYPE.
  4772.  
  4773. arguments: (CODING-SYSTEM EOL-TYPE)
  4774. Fcoding-system-doc-string
  4775. Return the doc string for CODING-SYSTEM.
  4776.  
  4777. arguments: (CODING-SYSTEM)
  4778. Fcoding-system-type
  4779. Return the type of CODING-SYSTEM.
  4780.  
  4781. arguments: (CODING-SYSTEM)
  4782. Fcoding-system-charset
  4783. Return initial charset of CODING-SYSTEM designated to GNUM.
  4784. GNUM allows 0 .. 3.
  4785.  
  4786. arguments: (CODING-SYSTEM GNUM)
  4787. Fcoding-system-property
  4788. Return the PROP property of CODING-SYSTEM.
  4789.  
  4790. arguments: (CODING-SYSTEM PROP)
  4791. Fcoding-category-list
  4792. Return a list of all recognized coding categories.
  4793.  
  4794. arguments: ()
  4795. Fset-coding-priority-list
  4796. Change the priority order of the coding categories.
  4797. LIST should be list of coding categories, in descending order of
  4798. priority.  Unspecified coding categories will be lower in priority
  4799. than all specified ones, in the same relative order they were in
  4800. previously.
  4801.  
  4802. arguments: (LIST)
  4803. Fcoding-priority-list
  4804. Return a list of coding categories in descending order of priority.
  4805.  
  4806. arguments: ()
  4807. Fset-coding-category-system
  4808. Change the coding system associated with a coding category.
  4809.  
  4810. arguments: (CODING-CATEGORY CODING-SYSTEM)
  4811. Fcoding-category-system
  4812. Return the coding system associated with a coding category.
  4813.  
  4814. arguments: (CODING-CATEGORY)
  4815. Fdetect-coding-region
  4816. Detect coding system of the text in the region between START and END.
  4817. Returned a list of possible coding systems ordered by priority.
  4818. If only ASCII characters are found, it returns 'undecided or one of
  4819. its subsidiary coding systems according to a detected end-of-line
  4820. type.  Optional arg BUFFER defaults to the current buffer.
  4821.  
  4822. arguments: (START END &optional BUFFER)
  4823. Fdecode-coding-region
  4824. Decode the text between START and END which is encoded in CODING-SYSTEM.
  4825. This is useful if you've read in encoded text from a file without decoding
  4826. it (e.g. you read in a JIS-formatted file but used the `binary' or
  4827. `no-conversion' coding system, so that it shows up as "^[$B!<!+^[(B").
  4828. Return length of decoded text.
  4829. BUFFER defaults to the current buffer if unspecified.
  4830.  
  4831. arguments: (START END CODING-SYSTEM &optional BUFFER)
  4832. Fencode-coding-region
  4833. Encode the text between START and END using CODING-SYSTEM.
  4834. This will, for example, convert Japanese characters into stuff such as
  4835. "^[$B!<!+^[(B" if you use the JIS encoding.  Return length of encoded
  4836. text.  BUFFER defaults to the current buffer if unspecified.
  4837.  
  4838. arguments: (START END CODING-SYSTEM &optional BUFFER)
  4839. Fdecode-shift-jis-char
  4840. Decode a JISX0208 character of Shift-JIS coding-system.
  4841. CODE is the character code in Shift-JIS as a cons of type bytes.
  4842. Return the corresponding character.
  4843.  
  4844. arguments: (CODE)
  4845. Fencode-shift-jis-char
  4846. Encode a JISX0208 character CHAR to SHIFT-JIS coding-system.
  4847. Return the corresponding character code in SHIFT-JIS as a cons of two bytes.
  4848.  
  4849. arguments: (CH)
  4850. Fdecode-big5-char
  4851. Decode a Big5 character CODE of BIG5 coding-system.
  4852. CODE is the character code in BIG5, a cons of two integers.
  4853. Return the corresponding character.
  4854.  
  4855. arguments: (CODE)
  4856. Fencode-big5-char
  4857. Encode the Big5 character CH to BIG5 coding-system.
  4858. Return the corresponding character code in Big5.
  4859.  
  4860. arguments: (CH)
  4861. Vkeyboard-coding-system
  4862. Coding system used for TTY keyboard input.
  4863. Not used under a windowing system.Vterminal-coding-system
  4864. Coding system used for TTY display output.
  4865. Not used under a windowing system.Vcoding-system-for-read
  4866. Overriding coding system used when writing a file or process.
  4867. You should *bind* this, not set it.  If this is non-nil, it specifies
  4868. the coding system that will be used when a file or process is read
  4869. in, and overrides `buffer-file-coding-system-for-read',
  4870. `insert-file-contents-pre-hook', etc.  Use those variables instead of
  4871. this one for permanent changes to the environment.Vcoding-system-for-write
  4872. Overriding coding system used when writing a file or process.
  4873. You should *bind* this, not set it.  If this is non-nil, it specifies
  4874. the coding system that will be used when a file or process is wrote
  4875. in, and overrides `buffer-file-coding-system',
  4876. `write-region-pre-hook', etc.  Use those variables instead of this one
  4877. for permanent changes to the environment.Vfile-name-coding-system
  4878. Coding system used to convert pathnames when accessing files.Venable-multibyte-characters
  4879. Non-nil means the buffer contents are regarded as multi-byte form
  4880. of characters, not a binary code.  This affects the display, file I/O,
  4881. and behaviors of various editing commands.
  4882.  
  4883. Setting this to nil does not do anything.Fconsole-tty-terminal-type
  4884. Return the terminal type of TTY console CONSOLE.
  4885.  
  4886. arguments: (&optional CONSOLE)
  4887. Fconsole-tty-controlling-process
  4888. Return the controlling process of TTY console CONSOLE.
  4889.  
  4890. arguments: (&optional CONSOLE)
  4891. Vdefault-tty-frame-plist
  4892. Plist of default frame-creation properties for tty frames.
  4893. These are in addition to and override what is specified in
  4894. `default-frame-plist', but are overridden by the arguments to the
  4895. particular call to `make-frame'.Fregister-tty-color
  4896. Register COLOR as a recognized TTY color.
  4897. COLOR should be a string.
  4898. Strings FG-STRING and BG-STRING should specify the escape sequences to
  4899.  set the foreground and background to the given color, respectively.
  4900.  
  4901. arguments: (COLOR FG-STRING BG-STRING)
  4902. Funregister-tty-color
  4903. Unregister COLOR as a recognized TTY color.
  4904.  
  4905. arguments: (COLOR)
  4906. Ffind-tty-color
  4907. Look up COLOR in the list of registered TTY colors.
  4908. If it is found, return a list (FG-STRING BG-STRING) of the escape
  4909. sequences used to set the foreground and background to the color, respectively.
  4910. If it is not found, return nil.
  4911.  
  4912. arguments: (COLOR)
  4913. Ftty-color-list
  4914. Return a list of the registered TTY colors.
  4915.  
  4916. arguments: ()
  4917. Fset-tty-dynamic-color-specs
  4918. Set the dynamic color specifications for TTY's.
  4919. FG and BG should be either nil or vaguely printf-like strings,
  4920. where each occurrence of %s is replaced with the color name and each
  4921. occurrence of %% is replaced with a single % character.
  4922.  
  4923. arguments: (FG BG)
  4924. Ftty-dynamic-color-specs
  4925. Return the dynamic color specifications for TTY's as a list of (FG BG).
  4926. See `set-tty-dynamic-color-specs'.
  4927.  
  4928. arguments: ()
  4929. Fclose-database
  4930. Close database OBJ.
  4931.  
  4932. arguments: (OBJ)
  4933. Fdatabase-type
  4934. Return the type of database OBJ.
  4935.  
  4936. arguments: (OBJ)
  4937. Fdatabase-subtype
  4938. Return the subtype of database OBJ, if any.
  4939.  
  4940. arguments: (OBJ)
  4941. Fdatabase-live-p
  4942. Return t iff OBJ is an active database, else nil.
  4943.  
  4944. arguments: (OBJ)
  4945. Fdatabase-file-name
  4946. Return the filename associated with the database OBJ.
  4947.  
  4948. arguments: (OBJ)
  4949. Fdatabasep
  4950. Return t iff OBJ is a database, else nil.
  4951.  
  4952. arguments: (OBJ)
  4953. Fdatabase-last-error
  4954. Return the last error associated with database OBJ.
  4955.  
  4956. arguments: (&optional OBJ)
  4957. Fopen-database
  4958. Open database FILE, using database method TYPE and SUBTYPE, with
  4959. access rights ACCESS and permissions MODE.  ACCESS can be any
  4960. combination of 'r' 'w' and '+', for read, write, and creation flags.
  4961.  
  4962. arguments: (FILE &optional TYPE SUBTYPE ACCESS MODE)
  4963. Fput-database
  4964. Store KEY and VAL in DATABASE.  If optional fourth arg REPLACE is
  4965. non-nil, replace any existing entry in the database.
  4966.  
  4967. arguments: (KEY VAL DBASE &optional REPLACE)
  4968. Fremove-database
  4969. Remove KEY from DATABASE.
  4970.  
  4971. arguments: (KEY DBASE)
  4972. Fget-database
  4973. Find value for KEY in DATABASE.
  4974. If there is no corresponding value, return DEFAULT (defaults to nil).
  4975.  
  4976. arguments: (KEY DBASE &optional DEFAULT)
  4977. Fmap-database
  4978. Map FUNCTION over entries in DATABASE, calling it with two args,
  4979. each key and value in the database.
  4980.  
  4981. arguments: (FUNCTION DBASE)
  4982. Finput-pending-p
  4983. T if command input is currently available with no waiting.
  4984. Actually, the value is nil only if we can be sure that no input is available.
  4985.  
  4986. arguments: ()
  4987. Fadd-timeout
  4988. Add a timeout, to be signaled after the timeout period has elapsed.
  4989. SECS is a number of seconds, expressed as an integer or a float.
  4990. FUNCTION will be called after that many seconds have elapsed, with one
  4991. argument, the given OBJECT.  If the optional RESIGNAL argument is provided,
  4992. then after this timeout expires, `add-timeout' will automatically be called
  4993. again with RESIGNAL as the first argument.
  4994.  
  4995. This function returns an object which is the id number of this particular
  4996. timeout.  You can pass that object to `disable-timeout' to turn off the
  4997. timeout before it has been signalled.
  4998.  
  4999. NOTE: Id numbers as returned by this function are in a distinct namespace
  5000. from those returned by `add-async-timeout'.  This means that the same id
  5001. number could refer to a pending synchronous timeout and a different pending
  5002. asynchronous timeout, and that you cannot pass an id from `add-timeout'
  5003. to `disable-async-timeout', or vice-versa.
  5004.  
  5005. The number of seconds may be expressed as a floating-point number, in which
  5006. case some fractional part of a second will be used.  Caveat: the usable
  5007. timeout granularity will vary from system to system.
  5008.  
  5009. Adding a timeout causes a timeout event to be returned by `next-event', and
  5010. the function will be invoked by `dispatch-event,' so if emacs is in a tight
  5011. loop, the function will not be invoked until the next call to sit-for or
  5012. until the return to top-level (the same is true of process filters).
  5013.  
  5014. If you need to have a timeout executed even when XEmacs is in the midst of
  5015. running Lisp code, use `add-async-timeout'.
  5016.  
  5017. WARNING: if you are thinking of calling add-timeout from inside of a
  5018. callback function as a way of resignalling a timeout, think again.  There
  5019. is a race condition.  That's why the RESIGNAL argument exists.
  5020.  
  5021. arguments: (SECS FUNCTION OBJECT &optional RESIGNAL)
  5022. Fdisable-timeout
  5023. Disable a timeout from signalling any more.
  5024. ID should be a timeout id number as returned by `add-timeout'.  If ID
  5025. corresponds to a one-shot timeout that has already signalled, nothing
  5026. will happen.
  5027.  
  5028. It will not work to call this function on an id number returned by
  5029. `add-async-timeout'.  Use `disable-async-timeout' for that.
  5030.  
  5031. arguments: (ID)
  5032. Fadd-async-timeout
  5033. Add an asynchronous timeout, to be signaled after an interval has elapsed.
  5034. SECS is a number of seconds, expressed as an integer or a float.
  5035. FUNCTION will be called after that many seconds have elapsed, with one
  5036. argument, the given OBJECT.  If the optional RESIGNAL argument is provided,
  5037. then after this timeout expires, `add-async-timeout' will automatically be
  5038. called again with RESIGNAL as the first argument.
  5039.  
  5040. This function returns an object which is the id number of this particular
  5041. timeout.  You can pass that object to `disable-async-timeout' to turn off
  5042. the timeout before it has been signalled.
  5043.  
  5044. NOTE: Id numbers as returned by this function are in a distinct namespace
  5045. from those returned by `add-timeout'.  This means that the same id number
  5046. could refer to a pending synchronous timeout and a different pending
  5047. asynchronous timeout, and that you cannot pass an id from
  5048. `add-async-timeout' to `disable-timeout', or vice-versa.
  5049.  
  5050. The number of seconds may be expressed as a floating-point number, in which
  5051. case some fractional part of a second will be used.  Caveat: the usable
  5052. timeout granularity will vary from system to system.
  5053.  
  5054. Adding an asynchronous timeout causes the function to be invoked as soon
  5055. as the timeout occurs, even if XEmacs is in the midst of executing some
  5056. other code. (This is unlike the synchronous timeouts added with
  5057. `add-timeout', where the timeout will only be signalled when XEmacs is
  5058. waiting for events, i.e. the next return to top-level or invocation of
  5059. `sit-for' or related functions.) This means that the function that is
  5060. called *must* not signal an error or change any global state (e.g. switch
  5061. buffers or windows) except when locking code is in place to make sure
  5062. that race conditions don't occur in the interaction between the
  5063. asynchronous timeout function and other code.
  5064.  
  5065. Under most circumstances, you should use `add-timeout' instead, as it is
  5066. much safer.  Asynchronous timeouts should only be used when such behavior
  5067. is really necessary.
  5068.  
  5069. Asynchronous timeouts are blocked and will not occur when `inhibit-quit'
  5070. is non-nil.  As soon as `inhibit-quit' becomes nil again, any pending
  5071. asynchronous timeouts will get called immediately. (Multiple occurrences
  5072. of the same asynchronous timeout are not queued, however.) While the
  5073. callback function of an asynchronous timeout is invoked, `inhibit-quit'
  5074. is automatically bound to non-nil, and thus other asynchronous timeouts
  5075. will be blocked unless the callback function explicitly sets `inhibit-quit'
  5076. to nil.
  5077.  
  5078. WARNING: if you are thinking of calling `add-async-timeout' from inside of a
  5079. callback function as a way of resignalling a timeout, think again.  There
  5080. is a race condition.  That's why the RESIGNAL argument exists.
  5081.  
  5082. arguments: (SECS FUNCTION OBJECT &optional RESIGNAL)
  5083. Fdisable-async-timeout
  5084. Disable an asynchronous timeout from signalling any more.
  5085. ID should be a timeout id number as returned by `add-async-timeout'.  If ID
  5086. corresponds to a one-shot timeout that has already signalled, nothing
  5087. will happen.
  5088.  
  5089. It will not work to call this function on an id number returned by
  5090. `add-timeout'.  Use `disable-timeout' for that.
  5091.  
  5092. arguments: (ID)
  5093. Fenqueue-eval-event
  5094. Add an eval event to the back of the eval event queue.
  5095. When this event is dispatched, FUNCTION (which should be a function
  5096. of one argument) will be called with OBJECT as its argument.
  5097. See `next-event' for a description of event types and how events
  5098. are received.
  5099.  
  5100. arguments: (FUNCTION OBJECT)
  5101. Fnext-event
  5102. Return the next available event.
  5103. Pass this object to `dispatch-event' to handle it.
  5104. In most cases, you will want to use `next-command-event', which returns
  5105. the next available "user" event (i.e. keypress, button-press,
  5106. button-release, or menu selection) instead of this function.
  5107.  
  5108. If EVENT is non-nil, it should be an event object and will be filled in
  5109. and returned; otherwise a new event object will be created and returned.
  5110. If PROMPT is non-nil, it should be a string and will be displayed in the
  5111. echo area while this function is waiting for an event.
  5112.  
  5113. The next available event will be
  5114.  
  5115. -- any events in `unread-command-events' or `unread-command-event'; else
  5116. -- the next event in the currently executing keyboard macro, if any; else
  5117. -- an event queued by `enqueue-eval-event', if any; else
  5118. -- the next available event from the window system or terminal driver.
  5119.  
  5120. In the last case, this function will block until an event is available.
  5121.  
  5122. The returned event will be one of the following types:
  5123.  
  5124. -- a key-press event.
  5125. -- a button-press or button-release event.
  5126. -- a misc-user-event, meaning the user selected an item on a menu or used
  5127.    the scrollbar.
  5128. -- a process event, meaning that output from a subprocess is available.
  5129. -- a timeout event, meaning that a timeout has elapsed.
  5130. -- an eval event, which simply causes a function to be executed when the
  5131.    event is dispatched.  Eval events are generated by `enqueue-eval-event'
  5132.    or by certain other conditions happening.
  5133. -- a magic event, indicating that some window-system-specific event
  5134.    happened (such as a focus-change notification) that must be handled
  5135.    synchronously with other events.  `dispatch-event' knows what to do with
  5136.    these events.
  5137.  
  5138. arguments: (&optional EVENT PROMPT)
  5139. Fnext-command-event
  5140. Return the next available "user" event.
  5141. Pass this object to `dispatch-event' to handle it.
  5142.  
  5143. If EVENT is non-nil, it should be an event object and will be filled in
  5144. and returned; otherwise a new event object will be created and returned.
  5145. If PROMPT is non-nil, it should be a string and will be displayed in the
  5146. echo area while this function is waiting for an event.
  5147.  
  5148. The event returned will be a keyboard, mouse press, or mouse release event.
  5149. If there are non-command events available (mouse motion, sub-process output,
  5150. etc) then these will be executed (with `dispatch-event') and discarded.  This
  5151. function is provided as a convenience; it is rougly equivalent to the lisp code
  5152.  
  5153.     (while (progn
  5154.          (next-event event prompt)
  5155.              (not (or (key-press-event-p event)
  5156.                       (button-press-event-p event)
  5157.                       (button-release-event-p event)
  5158.                       (misc-user-event-p event))))
  5159.        (dispatch-event event))
  5160.  
  5161. but it also makes a provision for displaying keystrokes in the echo area.
  5162.  
  5163. arguments: (&optional EVENT PROMPT)
  5164. Fdiscard-input
  5165. Discard any pending "user" events.
  5166. Also cancel any kbd macro being defined.
  5167. A user event is a key press, button press, button release, or
  5168. "misc-user" event (menu selection or scrollbar action).
  5169.  
  5170. arguments: ()
  5171. Faccept-process-output
  5172. Allow any pending output from subprocesses to be read by Emacs.
  5173. It is read into the process' buffers or given to their filter functions.
  5174. Non-nil arg PROCESS means do not return until some output has been received
  5175.  from PROCESS. Nil arg PROCESS means do not return until some output has
  5176.  been received from any process.
  5177. If the second arg is non-nil, it is the maximum number of seconds to wait:
  5178.  this function will return after that much time even if no input has arrived
  5179.  from PROCESS.  This argument may be a float, meaning wait some fractional
  5180.  part of a second.
  5181. If the third arg is non-nil, it is a number of milliseconds that is added
  5182.  to the second arg.  (This exists only for compatibility.)
  5183. Return non-nil iff we received any output before the timeout expired.
  5184.  
  5185. arguments: (&optional PROCESS TIMEOUT-SECS TIMEOUT-MSECS)
  5186. Fsleep-for
  5187. Pause, without updating display, for ARG seconds.
  5188. ARG may be a float, meaning pause for some fractional part of a second.
  5189.  
  5190. It is recommended that you never call sleep-for from inside of a process
  5191.  filter function or timer event (either synchronous or asynchronous).
  5192.  
  5193. arguments: (SECONDS)
  5194. Fsit-for
  5195. Perform redisplay, then wait ARG seconds or until user input is available.
  5196. ARG may be a float, meaning a fractional part of a second.
  5197. Optional second arg non-nil means don't redisplay, just wait for input.
  5198. Redisplay is preempted as always if user input arrives, and does not
  5199.  happen if input is available before it starts.
  5200. Value is t if waited the full time with no input arriving.
  5201.  
  5202. If sit-for is called from within a process filter function or timer
  5203.  event (either synchronous or asynchronous) it will return immediately.
  5204.  
  5205. arguments: (SECONDS &optional NODISPLAY)
  5206. Faccelerate-menu
  5207. Make the menubar active.  Menu items can be selected using menu accelerators
  5208. or by actions defined in menu-accelerator-map.
  5209.  
  5210. arguments: ()
  5211. Frecent-keys
  5212. Return a vector of recent keyboard or mouse button events read.
  5213. If NUMBER is non-nil, not more than NUMBER events will be returned.
  5214. Change number of events stored using `set-recent-keys-size'.
  5215.  
  5216. This copies the event objects into a new vector; it is safe to keep and
  5217. modify them.
  5218.  
  5219. arguments: (&optional NUMBER)
  5220. Frecent-keys-ring-size
  5221. The maximum number of events `recent-keys' can return.
  5222.  
  5223. arguments: ()
  5224. Fset-recent-keys-ring-size
  5225. Set the maximum number of events to be stored internally.
  5226.  
  5227. arguments: (SIZE)
  5228. Fdispatch-event
  5229. Given an event object as returned by `next-event', execute it.
  5230.  
  5231. Key-press, button-press, and button-release events get accumulated
  5232. until a complete key sequence (see `read-key-sequence') is reached,
  5233. at which point the sequence is looked up in the current keymaps and
  5234. acted upon.
  5235.  
  5236. Mouse motion events cause the low-level handling function stored in
  5237. `mouse-motion-handler' to be called. (There are very few circumstances
  5238. under which you should change this handler.  Use `mode-motion-hook'
  5239. instead.)
  5240.  
  5241. Menu, timeout, and eval events cause the associated function or handler
  5242. to be called.
  5243.  
  5244. Process events cause the subprocess's output to be read and acted upon
  5245. appropriately (see `start-process').
  5246.  
  5247. Magic events are handled as necessary.
  5248.  
  5249. arguments: (EVENT)
  5250. Fread-key-sequence
  5251. Read a sequence of keystrokes or mouse clicks.
  5252. Returns a vector of the event objects read.  The vector and the event
  5253. objects it contains are freshly created (and will not be side-effected
  5254. by subsequent calls to this function).
  5255.  
  5256. The sequence read is sufficient to specify a non-prefix command starting
  5257. from the current local and global keymaps.  A C-g typed while in this
  5258. function is treated like any other character, and `quit-flag' is not set.
  5259.  
  5260. First arg PROMPT is a prompt string.  If nil, do not prompt specially.
  5261. Second (optional) arg CONTINUE-ECHO, if non-nil, means this key echoes
  5262. as a continuation of the previous key.
  5263.  
  5264. The third (optional) arg DONT-DOWNCASE-LAST, if non-nil, means do not
  5265. convert the last event to lower case.  (Normally any upper case event
  5266. is converted to lower case if the original event is undefined and the lower
  5267. case equivalent is defined.) This argument is provided mostly for
  5268. FSF compatibility; the equivalent effect can be achieved more generally
  5269. by binding `retry-undefined-key-binding-unshifted' to nil around the
  5270. call to `read-key-sequence'.
  5271.  
  5272. A C-g typed while in this function is treated like any other character,
  5273. and `quit-flag' is not set.
  5274.  
  5275. If the user selects a menu item while we are prompting for a key-sequence,
  5276. the returned value will be a vector of a single menu-selection event.
  5277. An error will be signalled if you pass this value to `lookup-key' or a
  5278. related function.
  5279.  
  5280. `read-key-sequence' checks `function-key-map' for function key
  5281. sequences, where they wouldn't conflict with ordinary bindings.  See
  5282. `function-key-map' for more details.
  5283.  
  5284. arguments: (PROMPT &optional CONTINUE-ECHO DONT-DOWNCASE-LAST)
  5285. Fthis-command-keys
  5286. Return a vector of the keyboard or mouse button events that were used
  5287. to invoke this command.  This copies the vector and the events; it is safe
  5288. to keep and modify them.
  5289.  
  5290. arguments: ()
  5291. Freset-this-command-lengths
  5292. Used for complicated reasons in `universal-argument-other-key'.
  5293.  
  5294. `universal-argument-other-key' rereads the event just typed.
  5295. It then gets translated through `function-key-map'.
  5296. The translated event gets included in the echo area and in
  5297. the value of `this-command-keys' in addition to the raw original event.
  5298. That is not right.
  5299.  
  5300. Calling this function directs the translated event to replace
  5301. the original event, so that only one version of the event actually
  5302. appears in the echo area and in the value of `this-command-keys.'.
  5303.  
  5304. arguments: ()
  5305. Fopen-dribble-file
  5306. Start writing all keyboard characters to a dribble file called FILE.
  5307. If FILE is nil, close any open dribble file.
  5308.  
  5309. arguments: (FILE)
  5310. Vecho-keystrokes
  5311. *Nonzero means echo unfinished commands after this many seconds of pause.Vauto-save-interval
  5312. *Number of keyboard input characters between auto-saves.
  5313. Zero means disable autosaving due to number of characters typed.
  5314. See also the variable `auto-save-timeout'.Vpre-command-hook
  5315. Function or functions to run before every command.
  5316. This may examine the `this-command' variable to find out what command
  5317. is about to be run, or may change it to cause a different command to run.
  5318. Function on this hook must be careful to avoid signalling errors!Vpost-command-hook
  5319. Function or functions to run after every command.
  5320. This may examine the `this-command' variable to find out what command
  5321. was just executed.Vpre-idle-hook
  5322. Normal hook run when XEmacs it about to be idle.
  5323. This occurs whenever it is going to block, waiting for an event.
  5324. This generally happens as a result of a call to `next-event',
  5325. `next-command-event', `sit-for', `sleep-for', `accept-process-output',
  5326. `x-get-selection', or various Energize-specific commands.
  5327. Errors running the hook are caught and ignored.Vfocus-follows-mouse
  5328. *Variable to control XEmacs behavior with respect to focus changing.
  5329. If this variable is set to t, then XEmacs will not gratuitously change
  5330. the keyboard focus.  XEmacs cannot in general detect when this mode is
  5331. use by the window manager, so it is up to the user to set it.Vlast-command-event
  5332. Last keyboard or mouse button event that was part of a command.  This
  5333. variable is off limits: you may not set its value or modify the event that
  5334. is its value, as it is destructively modified by `read-key-sequence'.  If
  5335. you want to keep a pointer to this value, you must use `copy-event'.Vlast-command-char
  5336. If the value of `last-command-event' is a keyboard event, then
  5337. this is the nearest ASCII equivalent to it.  This is the value that
  5338. `self-insert-command' will put in the buffer.  Remember that there is
  5339. NOT a 1:1 mapping between keyboard events and ASCII characters: the set
  5340. of keyboard events is much larger, so writing code that examines this
  5341. variable to determine what key has been typed is bad practice, unless
  5342. you are certain that it will be one of a small set of characters.Vlast-input-event
  5343. Last keyboard or mouse button event received.  This variable is off
  5344. limits: you may not set its value or modify the event that is its value, as
  5345. it is destructively modified by `next-event'.  If you want to keep a pointer
  5346. to this value, you must use `copy-event'.Vcurrent-mouse-event
  5347. The mouse-button event which invoked this command, or nil.
  5348. This is usually what `(interactive "e")' returns.Vlast-input-char
  5349. If the value of `last-input-event' is a keyboard event, then
  5350. this is the nearest ASCII equivalent to it.  Remember that there is
  5351. NOT a 1:1 mapping between keyboard events and ASCII characters: the set
  5352. of keyboard events is much larger, so writing code that examines this
  5353. variable to determine what key has been typed is bad practice, unless
  5354. you are certain that it will be one of a small set of characters.Vlast-input-time
  5355. The time (in seconds since Jan 1, 1970) of the last-command-event,
  5356. represented as a cons of two 16-bit integers.  This is destructively
  5357. modified, so copy it if you want to keep it.Vunread-command-events
  5358. List of event objects to be read as next command input events.
  5359. This can be used to simulate the receipt of events from the user.
  5360. Normally this is nil.
  5361. Events are removed from the front of this list.Vunread-command-event
  5362. Obsolete.  Use `unread-command-events' instead.Vlast-command
  5363. The last command executed.  Normally a symbol with a function definition,
  5364. but can be whatever was found in the keymap, or whatever the variable
  5365. `this-command' was set to by that command.Vthis-command
  5366. The command now being executed.
  5367. The command can set this variable; whatever is put here
  5368. will be in `last-command' during the following command.Vhelp-char
  5369. Character to recognize as meaning Help.
  5370. When it is read, do `(eval help-form)', and display result if it's a string.
  5371. If the value of `help-form' is nil, this char can be read normally.
  5372. This can be any form recognized as a single key specifier.
  5373. The help-char cannot be a negative number in XEmacs.Vhelp-form
  5374. Form to execute when character help-char is read.
  5375. If the form returns a string, that string is displayed.
  5376. If `help-form' is nil, the help char is not recognized.Vprefix-help-command
  5377. Command to run when `help-char' character follows a prefix key.
  5378. This command is used only when there is no actual binding
  5379. for that character after that prefix key.Vkeyboard-translate-table
  5380. Hash table used as translate table for keyboard input.
  5381. Use `keyboard-translate' to portably add entries to this table.
  5382. Each key-press event is looked up in this table as follows:
  5383.  
  5384. -- If an entry maps a symbol to a symbol, then a key-press event whose
  5385.    keysym is the former symbol (with any modifiers at all) gets its
  5386.    keysym changed and its modifiers left alone.  This is useful for
  5387.    dealing with non-standard X keyboards, such as the grievous damage
  5388.    that Sun has inflicted upon the world.
  5389. -- If an entry maps a character to a character, then a key-press event
  5390.    matching the former character gets converted to a key-press event
  5391.    matching the latter character.  This is useful on ASCII terminals
  5392.    for (e.g.) making C-\ look like C-s, to get around flow-control
  5393.    problems.
  5394. -- If an entry maps a character to a symbol, then a key-press event
  5395.    matching the character gets converted to a key-press event whose
  5396.    keysym is the given symbol and which has no modifiers.Vretry-undefined-key-binding-unshifted
  5397. If a key-sequence which ends with a shifted keystroke is undefined
  5398. and this variable is non-nil then the command lookup is retried again
  5399. with the last key unshifted.  (e.g. C-X C-F would be retried as C-X C-f.)
  5400. If lookup still fails, a normal error is signalled.  In general,
  5401. you should *bind* this, not set it.VVcomposed_character_default_binding
  5402. The default keybinding to use for key events from composed input.
  5403. Window systems frequently have ways to allow the user to compose
  5404. single characters in a language using multiple keystrokes.
  5405. XEmacs sees these as single character keypress events.Vdebug-emacs-events
  5406. If non-zero, display debug information about Emacs events that XEmacs sees.
  5407. Information is displayed on stderr.
  5408.  
  5409. Before the event, the source of the event is displayed in parentheses,
  5410. and is one of the following:
  5411.  
  5412. (real)                A real event from the window system or
  5413.                 terminal driver, as far as XEmacs can tell.
  5414.  
  5415. (keyboard macro)        An event generated from a keyboard macro.
  5416.  
  5417. (unread-command-events)    An event taken from `unread-command-events'.
  5418.  
  5419. (unread-command-event)        An event taken from `unread-command-event'.
  5420.  
  5421. (command event queue)        An event taken from an internal queue.
  5422.                 Events end up on this queue when
  5423.                 `enqueue-eval-event' is called or when
  5424.                 user or eval events are received while
  5425.                 XEmacs is blocking (e.g. in `sit-for',
  5426.                 `sleep-for', or `accept-process-output',
  5427.                 or while waiting for the reply to an
  5428.                 X selection).
  5429.  
  5430. (->keyboard-translate-table)    The result of an event translated through
  5431.                 keyboard-translate-table.  Note that in
  5432.                 this case, two events are printed even
  5433.                 though only one is really generated.
  5434.  
  5435. (SIGINT)            A faked C-g resulting when XEmacs receives
  5436.                 a SIGINT (e.g. C-c was pressed in XEmacs'
  5437.                 controlling terminal or the signal was
  5438.                 explicitly sent to the XEmacs process).Vinhibit-input-event-recording
  5439. Non-nil inhibits recording of input-events to recent-keys ring.Vmenu-accelerator-prefix
  5440. Prefix key(s) that must be typed before menu accelerators will be activated.
  5441. Set this to a value acceptable by define-key.Vmenu-accelerator-modifiers
  5442. Modifier keys which must be pressed to get to the top level menu accelerators.
  5443. This is a list of modifier key symbols.  All modifier keys must be held down
  5444. while a valid menu accelerator key is pressed in order for the top level
  5445. menu to become active.
  5446.  
  5447. See also menu-accelerator-enabled and menu-accelerator-prefix.Vmenu-accelerator-enabled
  5448. Whether menu accelerator keys can cause the menubar to become active.
  5449. If 'menu-force or 'menu-fallback, then menu accelerator keys can
  5450. be used to activate the top level menu.  Once the menubar becomes active, the
  5451. accelerator keys can be used regardless of the value of this variable.
  5452.  
  5453. menu-force is used to indicate that the menu accelerator key takes
  5454. precedence over bindings in the current keymap(s).  menu-fallback means
  5455. that bindings in the current keymap take precedence over menu accelerator keys.
  5456. Thus a top level menu with an accelerator of "T" would be activated on a
  5457. keypress of Meta-t if menu-accelerator-enabled is menu-force.
  5458. However, if menu-accelerator-enabled is menu-fallback, then
  5459. Meta-t will not activate the menubar and will instead run the function
  5460. transpose-words, to which it is normally bound.
  5461.  
  5462. See also menu-accelerator-modifiers and menu-accelerator-prefix.Vmenu-accelerator-map
  5463. Keymap for use when the menubar is active.
  5464. The actions menu-quit, menu-up, menu-down, menu-left, menu-right,
  5465. menu-select and menu-escape can be mapped to keys in this map.
  5466.  
  5467. menu-quit    Immediately deactivate the menubar and any open submenus without
  5468.              selecting an item.
  5469. menu-up      Move the menu cursor up one row in the current menu.  If the
  5470.              move extends past the top of the menu, wrap around to the bottom.
  5471. menu-down    Move the menu cursor down one row in the current menu.  If the
  5472.              move extends past the bottom of the menu, wrap around to the top.
  5473.              If executed while the cursor is in the top level menu, move down
  5474.              into the selected menu.
  5475. menu-left    Move the cursor from a submenu into the parent menu.  If executed
  5476.              while the cursor is in the top level menu, move the cursor to the
  5477.              left.  If the move extends past the left edge of the menu, wrap
  5478.              around to the right edge.
  5479. menu-right   Move the cursor into a submenu.  If the cursor is located in the
  5480.              top level menu or is not currently on a submenu heading, then move
  5481.              the cursor to the next top level menu entry.  If the move extends
  5482.              past the right edge of the menu, wrap around to the left edge.
  5483. menu-select  Activate the item under the cursor.  If the cursor is located on
  5484.              a submenu heading, then move the cursor into the submenu.
  5485. menu-escape  Pop up to the next level of menus.  Moves from a submenu into its
  5486.              parent menu.  From the top level menu, this deactivates the
  5487.              menubar.
  5488.  
  5489. This keymap can also contain normal key-command bindings, in which case the
  5490. menubar is deactivated and the corresponding command is executed.
  5491.  
  5492. The action bindings used by the menu accelerator code are designed to mimic
  5493. the actions of menu traversal keys in a commonly used PC operating system.Fextentp
  5494. T if OBJECT is an extent.
  5495.  
  5496. arguments: (OBJECT)
  5497. Fextent-live-p
  5498. T if OBJECT is an extent and the extent has not been destroyed.
  5499.  
  5500. arguments: (OBJECT)
  5501. Fextent-detached-p
  5502. T if EXTENT is detached.
  5503.  
  5504. arguments: (EXTENT)
  5505. Fextent-object
  5506. Return object (buffer or string) EXTENT refers to.
  5507.  
  5508. arguments: (EXTENT)
  5509. Fextent-start-position
  5510. Return start position of EXTENT, or nil if EXTENT is detached.
  5511.  
  5512. arguments: (EXTENT)
  5513. Fextent-end-position
  5514. Return end position of EXTENT, or nil if EXTENT is detached.
  5515.  
  5516. arguments: (EXTENT)
  5517. Fextent-length
  5518. Return length of EXTENT in characters.
  5519.  
  5520. arguments: (EXTENT)
  5521. Fnext-extent
  5522. Find next extent after EXTENT.
  5523. If EXTENT is a buffer return the first extent in the buffer; likewise
  5524.  for strings.
  5525. Extents in a buffer are ordered in what is called the "display"
  5526.  order, which sorts by increasing start positions and then by *decreasing*
  5527.  end positions.
  5528. If you want to perform an operation on a series of extents, use
  5529.  `map-extents' instead of this function; it is much more efficient.
  5530.  The primary use of this function should be to enumerate all the
  5531.  extents in a buffer.
  5532. Note: The display order is not necessarily the order that `map-extents'
  5533.  processes extents in!
  5534.  
  5535. arguments: (EXTENT)
  5536. Fprevious-extent
  5537. Find last extent before EXTENT.
  5538. If EXTENT is a buffer return the last extent in the buffer; likewise
  5539.  for strings.
  5540. This function is analogous to `next-extent'.
  5541.  
  5542. arguments: (EXTENT)
  5543. Fnext-e-extent
  5544. Find next extent after EXTENT using the "e" order.
  5545. If EXTENT is a buffer return the first extent in the buffer; likewise
  5546.  for strings.
  5547.  
  5548. arguments: (EXTENT)
  5549. Fprevious-e-extent
  5550. Find last extent before EXTENT using the "e" order.
  5551. If EXTENT is a buffer return the last extent in the buffer; likewise
  5552.  for strings.
  5553. This function is analogous to `next-e-extent'.
  5554.  
  5555. arguments: (EXTENT)
  5556. Fnext-extent-change
  5557. Return the next position after POS where an extent begins or ends.
  5558. If POS is at the end of the buffer or string, POS will be returned;
  5559.  otherwise a position greater than POS will always be returned.
  5560. If BUFFER is nil, the current buffer is assumed.
  5561.  
  5562. arguments: (POS &optional OBJECT)
  5563. Fprevious-extent-change
  5564. Return the last position before POS where an extent begins or ends.
  5565. If POS is at the beginning of the buffer or string, POS will be returned;
  5566.  otherwise a position less than POS will always be returned.
  5567. If OBJECT is nil, the current buffer is assumed.
  5568.  
  5569. arguments: (POS &optional OBJECT)
  5570. Fextent-parent
  5571. Return the parent (if any) of EXTENT.
  5572. If an extent has a parent, it derives all its properties from that extent
  5573. and has no properties of its own. (The only "properties" that the
  5574. extent keeps are the buffer/string it refers to and the start and end
  5575. points.) It is possible for an extent's parent to itself have a parent.
  5576.  
  5577. arguments: (EXTENT)
  5578. Fextent-children
  5579. Return a list of the children (if any) of EXTENT.
  5580. The children of an extent are all those extents whose parent is that extent.
  5581. This function does not recursively trace children of children.
  5582. (To do that, use `extent-descendants'.)
  5583.  
  5584. arguments: (EXTENT)
  5585. Fset-extent-parent
  5586. Set the parent of EXTENT to PARENT (may be nil).
  5587. See `extent-parent'.
  5588.  
  5589. arguments: (EXTENT PARENT)
  5590. Fmake-extent
  5591. Make an extent for the range [FROM, TO) in BUFFER-OR-STRING.
  5592. BUFFER-OR-STRING defaults to the current buffer.  Insertions at point
  5593. TO will be outside of the extent; insertions at FROM will be inside the
  5594. extent, causing the extent to grow. (This is the same way that markers
  5595. behave.) You can change the behavior of insertions at the endpoints
  5596. using `set-extent-property'.  The extent is initially detached if both
  5597. FROM and TO are nil, and in this case BUFFER-OR-STRING defaults to nil,
  5598. meaning the extent is in no buffer and no string.
  5599.  
  5600. arguments: (FROM TO &optional BUFFER-OR-STRING)
  5601. Fcopy-extent
  5602. Make a copy of EXTENT.  It is initially detached.
  5603. Optional argument BUFFER-OR-STRING defaults to EXTENT's buffer or string.
  5604.  
  5605. arguments: (EXTENT &optional BUFFER-OR-STRING)
  5606. Fdelete-extent
  5607. Remove EXTENT from its buffer and destroy it.
  5608. This does not modify the buffer's text, only its display properties.
  5609. The extent cannot be used thereafter.
  5610.  
  5611. arguments: (EXTENT)
  5612. Fdetach-extent
  5613. Remove EXTENT from its buffer in such a way that it can be re-inserted.
  5614. An extent is also detached when all of its characters are all killed by a
  5615. deletion, unless its `detachable' property has been unset.
  5616.  
  5617. Extents which have the `duplicable' attribute are tracked by the undo
  5618. mechanism.  Detachment via `detach-extent' and string deletion is recorded,
  5619. as is attachment via `insert-extent' and string insertion.  Extent motion,
  5620. face changes, and attachment via `make-extent' and `set-extent-endpoints'
  5621. are not recorded.  This means that extent changes which are to be undo-able
  5622. must be performed by character editing, or by insertion and detachment of
  5623. duplicable extents.
  5624.  
  5625. arguments: (EXTENT)
  5626. Fset-extent-endpoints
  5627. Set the endpoints of EXTENT to START, END.
  5628. If START and END are null, call detach-extent on EXTENT.
  5629. BUFFER-OR-STRING specifies the new buffer or string that the extent should
  5630. be in, and defaults to EXTENT's buffer or string. (If nil, and EXTENT
  5631. is in no buffer and no string, it defaults to the current buffer.)
  5632. See documentation on `detach-extent' for a discussion of undo recording.
  5633.  
  5634. arguments: (EXTENT START END &optional BUFFER-OR-STRING)
  5635. Fextent-in-region-p
  5636. Return whether EXTENT overlaps a specified region.
  5637. This is equivalent to whether `map-extents' would visit EXTENT when called
  5638. with these args.
  5639.  
  5640. arguments: (EXTENT &optional FROM TO FLAGS)
  5641. Fmap-extents
  5642. Map FUNCTION over the extents which overlap a region in OBJECT.
  5643. OBJECT is normally a buffer or string but could be an extent (see below).
  5644. The region is normally bounded by [FROM, TO) (i.e. the beginning of the
  5645. region is closed and the end of the region is open), but this can be
  5646. changed with the FLAGS argument (see below for a complete discussion).
  5647.  
  5648. FUNCTION is called with the arguments (extent, MAPARG).  The arguments
  5649. OBJECT, FROM, TO, MAPARG, and FLAGS are all optional and default to
  5650. the current buffer, the beginning of OBJECT, the end of OBJECT, nil,
  5651. and nil, respectively.  `map-extents' returns the first non-nil result
  5652. produced by FUNCTION, and no more calls to FUNCTION are made after it
  5653. returns non-nil.
  5654.  
  5655. If OBJECT is an extent, FROM and TO default to the extent's endpoints,
  5656. and the mapping omits that extent and its predecessors.  This feature
  5657. supports restarting a loop based on `map-extents'.  Note: OBJECT must
  5658. be attached to a buffer or string, and the mapping is done over that
  5659. buffer or string.
  5660.  
  5661. An extent overlaps the region if there is any point in the extent that is
  5662. also in the region. (For the purpose of overlap, zero-length extents and
  5663. regions are treated as closed on both ends regardless of their endpoints'
  5664. specified open/closedness.) Note that the endpoints of an extent or region
  5665. are considered to be in that extent or region if and only if the
  5666. corresponding end is closed.  For example, the extent [5,7] overlaps the
  5667. region [2,5] because 5 is in both the extent and the region.  However, (5,7]
  5668. does not overlap [2,5] because 5 is not in the extent, and neither [5,7] nor
  5669. (5,7] overlaps the region [2,5) because 5 is not in the region.
  5670.  
  5671. The optional FLAGS can be a symbol or a list of one or more symbols,
  5672. modifying the behavior of `map-extents'.  Allowed symbols are:
  5673.  
  5674. end-closed        The region's end is closed.
  5675.  
  5676. start-open        The region's start is open.
  5677.  
  5678. all-extents-closed    Treat all extents as closed on both ends for the
  5679.             purpose of determining whether they overlap the
  5680.             region, irrespective of their actual open- or
  5681.             closedness.
  5682. all-extents-open    Treat all extents as open on both ends.
  5683. all-extents-closed-open    Treat all extents as start-closed, end-open.
  5684. all-extents-open-closed    Treat all extents as start-open, end-closed.
  5685.  
  5686. start-in-region        In addition to the above conditions for extent
  5687.             overlap, the extent's start position must lie within
  5688.             the specified region.  Note that, for this
  5689.             condition, open start positions are treated as if
  5690.             0.5 was added to the endpoint's value, and open
  5691.             end positions are treated as if 0.5 was subtracted
  5692.             from the endpoint's value.
  5693. end-in-region        The extent's end position must lie within the
  5694.             region.
  5695. start-and-end-in-region    Both the extent's start and end positions must lie
  5696.             within the region.
  5697. start-or-end-in-region    Either the extent's start or end position must lie
  5698.             within the region.
  5699.  
  5700. negate-in-region    The condition specified by a `*-in-region' flag
  5701.             must NOT hold for the extent to be considered.
  5702.  
  5703.  
  5704. At most one of `all-extents-closed', `all-extents-open',
  5705. `all-extents-closed-open', and `all-extents-open-closed' may be specified.
  5706.  
  5707. At most one of `start-in-region', `end-in-region',
  5708. `start-and-end-in-region', and `start-or-end-in-region' may be specified.
  5709.  
  5710. If optional arg PROPERTY is non-nil, only extents with that property set
  5711. on them will be visited.  If optional arg VALUE is non-nil, only extents
  5712. whose value for that property is `eq' to VALUE will be visited.
  5713.  
  5714. arguments: (FUNCTION &optional OBJECT FROM TO MAPARG FLAGS PROPERTY VALUE)
  5715. Fmap-extent-children
  5716. Map FUNCTION over the extents in the region from FROM to TO.
  5717. FUNCTION is called with arguments (extent, MAPARG).  See `map-extents'
  5718. for a full discussion of the arguments FROM, TO, and FLAGS.
  5719.  
  5720. The arguments are the same as for `map-extents', but this function differs
  5721. in that it only visits extents which start in the given region, and also
  5722. in that, after visiting an extent E, it skips all other extents which start
  5723. inside E but end before E's end.
  5724.  
  5725. Thus, this function may be used to walk a tree of extents in a buffer:
  5726.     (defun walk-extents (buffer &optional ignore)
  5727.      (map-extent-children 'walk-extents buffer))
  5728.  
  5729. arguments: (FUNCTION &optional OBJECT FROM TO MAPARG FLAGS PROPERTY VALUE)
  5730. Fextent-at
  5731. Find "smallest" extent at POS in OBJECT having PROPERTY set.
  5732. Normally, an extent is "at" POS if it overlaps the region (POS, POS+1);
  5733.  i.e. if it covers the character after POS. (However, see the definition
  5734.  of AT-FLAG.) "Smallest" means the extent that comes last in the display
  5735.  order; this normally means the extent whose start position is closest to
  5736.  POS.  See `next-extent' for more information.
  5737. OBJECT specifies a buffer or string and defaults to the current buffer.
  5738. PROPERTY defaults to nil, meaning that any extent will do.
  5739. Properties are attached to extents with `set-extent-property', which see.
  5740. Returns nil if POS is invalid or there is no matching extent at POS.
  5741. If the fourth argument BEFORE is not nil, it must be an extent; any returned
  5742.  extent will precede that extent.  This feature allows `extent-at' to be
  5743.  used by a loop over extents.
  5744. AT-FLAG controls how end cases are handled, and should be one of:
  5745.  
  5746. nil or `after'        An extent is at POS if it covers the character
  5747.             after POS.  This is consistent with the way
  5748.             that text properties work.
  5749. `before'        An extent is at POS if it covers the character
  5750.             before POS.
  5751. `at'            An extent is at POS if it overlaps or abuts POS.
  5752.             This includes all zero-length extents at POS.
  5753.  
  5754. Note that in all cases, the start-openness and end-openness of the extents
  5755. considered is ignored.  If you want to pay attention to those properties,
  5756. you should use `map-extents', which gives you more control.
  5757.  
  5758. arguments: (POS &optional OBJECT PROPERTY BEFORE AT-FLAG)
  5759. Fset-extent-initial-redisplay-function
  5760. Note: This feature is experimental!
  5761.         
  5762. Set initial-redisplay-function of EXTENT to the function
  5763. FUNCTION.
  5764.  
  5765. The first time the EXTENT is (re)displayed, an eval event will be
  5766. dispatched calling FUNCTION with EXTENT as its only argument.  
  5767.  
  5768. arguments: (EXTENT FUNCTION)
  5769. Fextent-face
  5770. Return the name of the face in which EXTENT is displayed, or nil
  5771. if the extent's face is unspecified.  This might also return a list
  5772. of face names. 
  5773.  
  5774. arguments: (EXTENT)
  5775. Fset-extent-face
  5776. Make the given EXTENT have the graphic attributes specified by FACE.
  5777. FACE can also be a list of faces, and all faces listed will apply,
  5778. with faces earlier in the list taking priority over those later in the
  5779. list.
  5780.  
  5781. arguments: (EXTENT FACE)
  5782. Fextent-mouse-face
  5783. Return the face used to highlight EXTENT when the mouse passes over it.
  5784. The return value will be a face name, a list of face names, or nil
  5785. if the extent's mouse face is unspecified.
  5786.  
  5787. arguments: (EXTENT)
  5788. Fset-extent-mouse-face
  5789. Set the face used to highlight EXTENT when the mouse passes over it.
  5790. FACE can also be a list of faces, and all faces listed will apply,
  5791. with faces earlier in the list taking priority over those later in the
  5792. list.
  5793.  
  5794. arguments: (EXTENT FACE)
  5795. Fset-extent-begin-glyph
  5796. Display a bitmap, subwindow or string at the beginning of EXTENT.
  5797. BEGIN-GLYPH must be a glyph object.  The layout policy defaults to `text'.
  5798.  
  5799. arguments: (EXTENT BEGIN-GLYPH &optional LAYOUT)
  5800. Fset-extent-end-glyph
  5801. Display a bitmap, subwindow or string at the end of the EXTENT.
  5802. END-GLYPH must be a glyph object.  The layout policy defaults to `text'.
  5803.  
  5804. arguments: (EXTENT END-GLYPH &optional LAYOUT)
  5805. Fextent-begin-glyph
  5806. Return the glyph object displayed at the beginning of EXTENT.
  5807. If there is none, nil is returned.
  5808.  
  5809. arguments: (EXTENT-OBJ)
  5810. Fextent-end-glyph
  5811. Return the glyph object displayed at the end of EXTENT.
  5812. If there is none, nil is returned.
  5813.  
  5814. arguments: (EXTENT-OBJ)
  5815. Fset-extent-begin-glyph-layout
  5816. Set the layout policy of the given extent's begin glyph.
  5817. Access this using the `extent-begin-glyph-layout' function.
  5818.  
  5819. arguments: (EXTENT LAYOUT)
  5820. Fset-extent-end-glyph-layout
  5821. Set the layout policy of the given extent's end glyph.
  5822. Access this using the `extent-end-glyph-layout' function.
  5823.  
  5824. arguments: (EXTENT LAYOUT)
  5825. Fextent-begin-glyph-layout
  5826. Return the layout policy associated with the given extent's begin glyph.
  5827. Set this using the `set-extent-begin-glyph-layout' function.
  5828.  
  5829. arguments: (EXTENT)
  5830. Fextent-end-glyph-layout
  5831. Return the layout policy associated with the given extent's end glyph.
  5832. Set this using the `set-extent-end-glyph-layout' function.
  5833.  
  5834. arguments: (EXTENT)
  5835. Fset-extent-priority
  5836. Changes the display priority of EXTENT.
  5837. When the extent attributes are being merged for display, the priority
  5838. is used to determine which extent takes precedence in the event of a
  5839. conflict (two extents whose faces both specify font, for example: the
  5840. font of the extent with the higher priority will be used).
  5841. Extents are created with priority 0; priorities may be negative.
  5842.  
  5843. arguments: (EXTENT PRI)
  5844. Fextent-priority
  5845. Return the display priority of EXTENT; see `set-extent-priority'.
  5846.  
  5847. arguments: (EXTENT)
  5848. Fset-extent-property
  5849. Change a property of an extent.
  5850. PROPERTY may be any symbol; the value stored may be accessed with
  5851.  the `extent-property' function.
  5852. The following symbols have predefined meanings:
  5853.  
  5854.  detached           Removes the extent from its buffer; setting this is
  5855.                     the same as calling `detach-extent'.
  5856.  
  5857.  destroyed          Removes the extent from its buffer, and makes it
  5858.                     unusable in the future; this is the same calling
  5859.                     `delete-extent'.
  5860.  
  5861.  priority           Change redisplay priority; same as `set-extent-priority'.
  5862.  
  5863.  start-open         Whether the set of characters within the extent is
  5864.                     treated being open on the left, that is, whether
  5865.                     the start position is an exclusive, rather than
  5866.                     inclusive, boundary.  If true, then characters
  5867.                     inserted exactly at the beginning of the extent
  5868.                     will remain outside of the extent; otherwise they
  5869.                     will go into the extent, extending it.
  5870.  
  5871.  end-open           Whether the set of characters within the extent is
  5872.                     treated being open on the right, that is, whether
  5873.                     the end position is an exclusive, rather than
  5874.                     inclusive, boundary.  If true, then characters
  5875.                     inserted exactly at the end of the extent will
  5876.                     remain outside of the extent; otherwise they will
  5877.                     go into the extent, extending it.
  5878.  
  5879.                     By default, extents have the `end-open' but not the
  5880.                     `start-open' property set.
  5881.  
  5882.  read-only          Text within this extent will be unmodifiable.
  5883.  
  5884.  initial-redisplay-function (EXPERIMENTAL)
  5885.                     function to be called the first time (part of) the extent
  5886.                     is redisplayed. It will be called with the extent as its
  5887.                     first argument.
  5888.             Note: The function will not be called immediately
  5889.             during redisplay, an eval event will be dispatched.
  5890.  
  5891.  detachable         Whether the extent gets detached (as with
  5892.                     `detach-extent') when all the text within the
  5893.                     extent is deleted.  This is true by default.  If
  5894.                     this property is not set, the extent becomes a
  5895.                     zero-length extent when its text is deleted. (In
  5896.                     such a case, the `start-open' property is
  5897.                     automatically removed if both the `start-open' and
  5898.                     `end-open' properties are set, since zero-length
  5899.                     extents open on both ends are not allowed.)
  5900.  
  5901.  face               The face in which to display the text.  Setting
  5902.                     this is the same as calling `set-extent-face'.
  5903.  
  5904.  mouse-face        If non-nil, the extent will be highlighted in this
  5905.             face when the mouse moves over it.
  5906.  
  5907.  pointer            If non-nil, and a valid pointer glyph, this specifies
  5908.                     the shape of the mouse pointer while over the extent.
  5909.  
  5910.  highlight          Obsolete: Setting this property is equivalent to
  5911.             setting a `mouse-face' property of `highlight'.
  5912.             Reading this property returns non-nil if
  5913.             the extent has a non-nil `mouse-face' property.
  5914.  
  5915.  duplicable         Whether this extent should be copied into strings,
  5916.                     so that kill, yank, and undo commands will restore
  5917.                     or copy it.  `duplicable' extents are copied from
  5918.                     an extent into a string when `buffer-substring' or
  5919.                     a similar function creates a string.  The extents
  5920.                     in a string are copied into other strings created
  5921.                     from the string using `concat' or `substring'.
  5922.                     When `insert' or a similar function inserts the
  5923.                     string into a buffer, the extents are copied back
  5924.                     into the buffer.
  5925.  
  5926.  unique             Meaningful only in conjunction with `duplicable'.
  5927.                     When this is set, there may be only one instance
  5928.                     of this extent attached at a time: if it is copied
  5929.                     to the kill ring and then yanked, the extent is
  5930.                     not copied.  If, however, it is killed (removed
  5931.                     from the buffer) and then yanked, it will be
  5932.                     re-attached at the new position.
  5933.  
  5934.  invisible          If the value is non-nil, text under this extent
  5935.                     may be treated as not present for the purpose of
  5936.                     redisplay, or may be displayed using an ellipsis
  5937.                     or other marker; see `buffer-invisibility-spec'
  5938.                     and `invisible-text-glyph'.  In all cases,
  5939.                     however, the text is still visible to other
  5940.                     functions that examine a buffer's text.
  5941.  
  5942.  keymap             This keymap is consulted for mouse clicks on this
  5943.                     extent, or keypresses made while point is within the
  5944.                     extent.
  5945.  
  5946.  copy-function      This is a hook that is run when a duplicable extent
  5947.                     is about to be copied from a buffer to a string (or
  5948.                     the kill ring).  It is called with three arguments,
  5949.                     the extent, and the buffer-positions within it
  5950.                     which are being copied.  If this function returns
  5951.                     nil, then the extent will not be copied; otherwise
  5952.                     it will.
  5953.  
  5954.  paste-function     This is a hook that is run when a duplicable extent is
  5955.                     about to be copied from a string (or the kill ring)
  5956.                     into a buffer.  It is called with three arguments,
  5957.                     the original extent, and the buffer positions which
  5958.                     the copied extent will occupy.  (This hook is run
  5959.                     after the corresponding text has already been
  5960.                     inserted into the buffer.)  Note that the extent
  5961.                     argument may be detached when this function is run.
  5962.                     If this function returns nil, no extent will be
  5963.                     inserted.  Otherwise, there will be an extent
  5964.                     covering the range in question.
  5965.  
  5966.                     If the original extent is not attached to a buffer,
  5967.                     then it will be re-attached at this range.
  5968.                     Otherwise, a copy will be made, and that copy
  5969.                     attached here.
  5970.  
  5971.                     The copy-function and paste-function are meaningful
  5972.                     only for extents with the `duplicable' flag set,
  5973.                     and if they are not specified, behave as if `t' was
  5974.                     the returned value.  When these hooks are invoked,
  5975.                     the current buffer is the buffer which the extent
  5976.                     is being copied from/to, respectively.
  5977.  
  5978.  begin-glyph        A glyph to be displayed at the beginning of the extent,
  5979.                     or nil.
  5980.  
  5981.  end-glyph          A glyph to be displayed at the end of the extent,
  5982.                     or nil.
  5983.  
  5984.  begin-glyph-layout The layout policy (one of `text', `whitespace',
  5985.                     `inside-margin', or `outside-margin') of the extent's
  5986.                     begin glyph.
  5987.  
  5988.  end-glyph-layout The layout policy of the extent's end glyph.
  5989.  
  5990. arguments: (EXTENT PROPERTY VALUE)
  5991. Fset-extent-properties
  5992. Change some properties of EXTENT.
  5993. PLIST is a property list.
  5994. For a list of built-in properties, see `set-extent-property'.
  5995.  
  5996. arguments: (EXTENT PLIST)
  5997. Fextent-property
  5998. Return EXTENT's value for property PROPERTY.
  5999. See `set-extent-property' for the built-in property names.
  6000.  
  6001. arguments: (EXTENT PROPERTY &optional DEFAULT)
  6002. Fextent-properties
  6003. Return a property list of the attributes of the given extent.
  6004. Do not modify this list; use `set-extent-property' instead.
  6005.  
  6006. arguments: (EXTENT)
  6007. Fforce-highlight-extent
  6008. Highlight or unhighlight the given extent.
  6009. If the second arg is non-nil, it will be highlighted, else dehighlighted.
  6010. This is the same as `highlight-extent', except that it will work even
  6011. on extents without the `mouse-face' property.
  6012.  
  6013. arguments: (EXTENT-OBJ &optional HIGHLIGHT-P)
  6014. Fhighlight-extent
  6015. Highlight the given extent, if it is highlightable
  6016. (that is, if it has the `mouse-face' property).
  6017. If the second arg is non-nil, it will be highlighted, else dehighlighted.
  6018. Highlighted extents are displayed as if they were merged with the face
  6019. or faces specified by the `mouse-face' property.
  6020.  
  6021. arguments: (EXTENT-OBJ &optional HIGHLIGHT-P)
  6022. Finsert-extent
  6023. Insert EXTENT from START to END in BUFFER-OR-STRING.
  6024. BUFFER-OR-STRING defaults to the current buffer if omitted.
  6025. This operation does not insert any characters,
  6026. but otherwise acts as if there were a replicating extent whose
  6027. parent is EXTENT in some string that was just inserted.
  6028. Returns the newly-inserted extent.
  6029. The fourth arg, NO-HOOKS, can be used to inhibit the running of the
  6030.  extent's `paste-function' property if it has one.
  6031. See documentation on `detach-extent' for a discussion of undo recording.
  6032.  
  6033. arguments: (EXTENT &optional START END NO-HOOKS BUFFER-OR-STRING)
  6034. Fget-text-property
  6035. Returns the value of the PROP property at the given position.
  6036. Optional arg OBJECT specifies the buffer or string to look in, and
  6037.  defaults to the current buffer.
  6038. Optional arg AT-FLAG controls what it means for a property to be "at"
  6039.  a position, and has the same meaning as in `extent-at'.
  6040. This examines only those properties added with `put-text-property'.
  6041. See also `get-char-property'.
  6042.  
  6043. arguments: (POS PROP &optional OBJECT AT-FLAG)
  6044. Fget-char-property
  6045. Returns the value of the PROP property at the given position.
  6046. Optional arg OBJECT specifies the buffer or string to look in, and
  6047.  defaults to the current buffer.
  6048. Optional arg AT-FLAG controls what it means for a property to be "at"
  6049.  a position, and has the same meaning as in `extent-at'.
  6050. This examines properties on all extents.
  6051. See also `get-text-property'.
  6052.  
  6053. arguments: (POS PROP &optional OBJECT AT-FLAG)
  6054. Fput-text-property
  6055. Adds the given property/value to all characters in the specified region.
  6056. The property is conceptually attached to the characters rather than the
  6057. region.  The properties are copied when the characters are copied/pasted.
  6058. Fifth argument OBJECT is the buffer or string containing the text, and
  6059. defaults to the current buffer.
  6060.  
  6061. arguments: (START END PROP VALUE &optional OBJECT)
  6062. Fput-nonduplicable-text-property
  6063. Adds the given property/value to all characters in the specified region.
  6064. The property is conceptually attached to the characters rather than the
  6065. region, however the properties will not be copied when the characters
  6066. are copied.
  6067. Fifth argument OBJECT is the buffer or string containing the text, and
  6068. defaults to the current buffer.
  6069.  
  6070. arguments: (START END PROP VALUE &optional OBJECT)
  6071. Fadd-text-properties
  6072. Add properties to the characters from START to END.
  6073. The third argument PROPS is a property list specifying the property values
  6074. to add.  The optional fourth argument, OBJECT, is the buffer or string
  6075. containing the text and defaults to the current buffer.  Returns t if
  6076. any property was changed, nil otherwise.
  6077.  
  6078. arguments: (START END PROPS &optional OBJECT)
  6079. Fadd-nonduplicable-text-properties
  6080. Add nonduplicable properties to the characters from START to END.
  6081. (The properties will not be copied when the characters are copied.)
  6082. The third argument PROPS is a property list specifying the property values
  6083. to add.  The optional fourth argument, OBJECT, is the buffer or string
  6084. containing the text and defaults to the current buffer.  Returns t if
  6085. any property was changed, nil otherwise.
  6086.  
  6087. arguments: (START END PROPS &optional OBJECT)
  6088. Fremove-text-properties
  6089. Remove the given properties from all characters in the specified region.
  6090. PROPS should be a plist, but the values in that plist are ignored (treated
  6091. as nil).  Returns t if any property was changed, nil otherwise.
  6092. Fourth argument OBJECT is the buffer or string containing the text, and
  6093. defaults to the current buffer.
  6094.  
  6095. arguments: (START END PROPS &optional OBJECT)
  6096. Ftext-prop-extent-paste-function
  6097. Used as the `paste-function' property of `text-prop' extents.
  6098.  
  6099. arguments: (EXTENT FROM TO)
  6100. Fnext-single-property-change
  6101. Return the position of next property change for a specific property.
  6102. Scans characters forward from POS till it finds a change in the PROP
  6103.  property, then returns the position of the change.  The optional third
  6104.  argument OBJECT is the buffer or string to scan (defaults to the current
  6105.  buffer).
  6106. The property values are compared with `eq'.
  6107. Return nil if the property is constant all the way to the end of BUFFER.
  6108. If the value is non-nil, it is a position greater than POS, never equal.
  6109.  
  6110. If the optional fourth argument LIMIT is non-nil, don't search
  6111.  past position LIMIT; return LIMIT if nothing is found before LIMIT.
  6112. If two or more extents with conflicting non-nil values for PROP overlap
  6113.  a particular character, it is undefined which value is considered to be
  6114.  the value of PROP. (Note that this situation will not happen if you always
  6115.  use the text-property primitives.)
  6116.  
  6117. arguments: (POS PROP &optional OBJECT LIMIT)
  6118. Fprevious-single-property-change
  6119. Return the position of next property change for a specific property.
  6120. Scans characters backward from POS till it finds a change in the PROP
  6121.  property, then returns the position of the change.  The optional third
  6122.  argument OBJECT is the buffer or string to scan (defaults to the current
  6123.  buffer).
  6124. The property values are compared with `eq'.
  6125. Return nil if the property is constant all the way to the start of BUFFER.
  6126. If the value is non-nil, it is a position less than POS, never equal.
  6127.  
  6128. If the optional fourth argument LIMIT is non-nil, don't search back
  6129.  past position LIMIT; return LIMIT if nothing is found until LIMIT.
  6130. If two or more extents with conflicting non-nil values for PROP overlap
  6131.  a particular character, it is undefined which value is considered to be
  6132.  the value of PROP. (Note that this situation will not happen if you always
  6133.  use the text-property primitives.)
  6134.  
  6135. arguments: (POS PROP &optional OBJECT LIMIT)
  6136. Vmouse-highlight-priority
  6137. The priority to use for the mouse-highlighting pseudo-extent
  6138. that is used to highlight extents with the `mouse-face' attribute set.
  6139. See `set-extent-priority'.Vdefault-text-properties
  6140. Property list giving default values for text properties.
  6141. Whenever a character does not specify a value for a property, the value
  6142. stored in this list is used instead.  This only applies when the
  6143. functions `get-text-property' or `get-char-property' are called.Ffacep
  6144. Return non-nil if OBJECT is a face.
  6145.  
  6146. arguments: (OBJECT)
  6147. Ffind-face
  6148. Retrieve the face of the given name.
  6149. If FACE-OR-NAME is a face object, it is simply returned.
  6150. Otherwise, FACE-OR-NAME should be a symbol.  If there is no such face,
  6151. nil is returned.  Otherwise the associated face object is returned.
  6152.  
  6153. arguments: (FACE-OR-NAME)
  6154. Fget-face
  6155. Retrieve the face of the given name.
  6156. Same as `find-face' except an error is signalled if there is no such
  6157. face instead of returning nil.
  6158.  
  6159. arguments: (NAME)
  6160. Fface-name
  6161. Return the name of the given face.
  6162.  
  6163. arguments: (FACE)
  6164. Fbuilt-in-face-specifiers
  6165. Return a list of all built-in face specifier properties.
  6166. Don't modify this list!
  6167.  
  6168. arguments: ()
  6169. Fface-list
  6170. Return a list of the names of all defined faces.
  6171. If TEMPORARY is nil, only the permanent faces are included.
  6172. If it is t, only the temporary faces are included.  If it is any
  6173. other non-nil value both permanent and temporary are included.
  6174.  
  6175. arguments: (&optional TEMPORARY)
  6176. Fmake-face
  6177. Defines and returns a new FACE described by DOC-STRING.
  6178. You can modify the font, color, etc of a face with the set-face- functions.
  6179. If the face already exists, it is unmodified.
  6180. If TEMPORARY is non-nil, this face will cease to exist if not in use.
  6181.  
  6182. arguments: (NAME &optional DOC-STRING TEMPORARY)
  6183. Fcopy-face
  6184. Defines and returns a new face which is a copy of an existing one,
  6185. or makes an already-existing face be exactly like another. LOCALE,
  6186. TAG-SET, EXACT-P, and HOW-TO-ADD are as in `copy-specifier'.
  6187.  
  6188. arguments: (OLD-FACE NEW-NAME &optional LOCALE TAG-SET EXACT-P HOW-TO-ADD)
  6189. Ffind-file-name-handler
  6190. Return FILENAME's handler function for OPERATION, if it has one.
  6191. Otherwise, return nil.
  6192. A file name is handled if one of the regular expressions in
  6193. `file-name-handler-alist' matches it.
  6194.  
  6195. If OPERATION equals `inhibit-file-name-operation', then we ignore
  6196. any handlers that are members of `inhibit-file-name-handlers',
  6197. but we still do run any other handlers.  This lets handlers
  6198. use the standard functions without calling themselves recursively.
  6199.  
  6200. arguments: (FILENAME &optional OPERATION)
  6201. Ffile-name-directory
  6202. Return the directory component in file name NAME.
  6203. Return nil if NAME does not include a directory.
  6204. Otherwise return a directory spec.
  6205. Given a Unix syntax file name, returns a string ending in slash;
  6206. on VMS, perhaps instead a string ending in `:', `]' or `>'.
  6207.  
  6208. arguments: (FILE)
  6209. Ffile-name-nondirectory
  6210. Return file name NAME sans its directory.
  6211. For example, in a Unix-syntax file name,
  6212. this is everything after the last slash,
  6213. or the entire name if it contains no slash.
  6214.  
  6215. arguments: (FILE)
  6216. Funhandled-file-name-directory
  6217. Return a directly usable directory name somehow associated with FILENAME.
  6218. A `directly usable' directory name is one that may be used without the
  6219. intervention of any file handler.
  6220. If FILENAME is a directly usable file itself, return
  6221. (file-name-directory FILENAME).
  6222. The `call-process' and `start-process' functions use this function to
  6223. get a current directory to run processes in.
  6224.  
  6225. arguments: (FILENAME)
  6226. Ffile-name-as-directory
  6227. Return a string representing file FILENAME interpreted as a directory.
  6228. This operation exists because a directory is also a file, but its name as
  6229. a directory is different from its name as a file.
  6230. The result can be used as the value of `default-directory'
  6231. or passed as second argument to `expand-file-name'.
  6232. For a Unix-syntax file name, just appends a slash.
  6233. On VMS, converts "[X]FOO.DIR" to "[X.FOO]", etc.
  6234.  
  6235. arguments: (FILE)
  6236. Fdirectory-file-name
  6237. Return the file name of the directory named DIR.
  6238. This is the name of the file that holds the data for the directory DIR.
  6239. This operation exists because a directory is also a file, but its name as
  6240. a directory is different from its name as a file.
  6241. In Unix-syntax, this function just removes the final slash.
  6242. On VMS, given a VMS-syntax directory name such as "[X.Y]",
  6243. it returns a file name such as "[X]Y.DIR.1".
  6244.  
  6245. arguments: (DIRECTORY)
  6246. Fmake-temp-name
  6247. Generate temporary file name (string) starting with PREFIX (a string).
  6248. The Emacs process number forms part of the result,
  6249. so there is no danger of generating a name being used by another process.
  6250.  
  6251. arguments: (PREFIX)
  6252. Fexpand-file-name
  6253. Convert FILENAME to absolute, and canonicalize it.
  6254. Second arg DEFAULT is directory to start with if FILENAME is relative
  6255.  (does not start with slash); if DEFAULT is nil or missing,
  6256. the current buffer's value of default-directory is used.
  6257. Path components that are `.' are removed, and
  6258. path components followed by `..' are removed, along with the `..' itself;
  6259. note that these simplifications are done without checking the resulting
  6260. paths in the file system.
  6261. An initial `~/' expands to your home directory.
  6262. An initial `~USER/' expands to USER's home directory.
  6263. See also the function `substitute-in-file-name'.
  6264.  
  6265. arguments: (NAME &optional DEFAULT)
  6266. Ffile-truename
  6267. Return the canonical name of the given FILE.
  6268. Second arg DEFAULT is directory to start with if FILE is relative
  6269.  (does not start with slash); if DEFAULT is nil or missing,
  6270.  the current buffer's value of default-directory is used.
  6271. No component of the resulting pathname will be a symbolic link, as
  6272.  in the realpath() function.
  6273.  
  6274. arguments: (FILENAME &optional DEFAULT)
  6275. Fsubstitute-in-file-name
  6276. Substitute environment variables referred to in FILENAME.
  6277. `$FOO' where FOO is an environment variable name means to substitute
  6278. the value of that variable.  The variable name should be terminated
  6279. with a character not a letter, digit or underscore; otherwise, enclose
  6280. the entire variable name in braces.
  6281. If `/~' appears, all of FILENAME through that `/' is discarded.
  6282.  
  6283. On VMS, `$' substitution is not done; this function does little and only
  6284. duplicates what `expand-file-name' does.
  6285.  
  6286. arguments: (STRING)
  6287. Fcopy-file
  6288. Copy FILE to NEWNAME.  Both args must be strings.
  6289. Signals a `file-already-exists' error if file NEWNAME already exists,
  6290. unless a third argument OK-IF-ALREADY-EXISTS is supplied and non-nil.
  6291. A number as third arg means request confirmation if NEWNAME already exists.
  6292. This is what happens in interactive use with M-x.
  6293. Fourth arg KEEP-TIME non-nil means give the new file the same
  6294. last-modified time as the old one.  (This works on only some systems.)
  6295. A prefix arg makes KEEP-TIME non-nil.
  6296.  
  6297. arguments: (FILENAME NEWNAME &optional OK-IF-ALREADY-EXISTS KEEP-TIME)
  6298. Fmake-directory-internal
  6299. Create a directory.  One argument, a file name string.
  6300.  
  6301. arguments: (DIRNAME)
  6302. Fdelete-directory
  6303. Delete a directory.  One argument, a file name or directory name string.
  6304.  
  6305. arguments: (DIRNAME)
  6306. Fdelete-file
  6307. Delete specified file.  One argument, a file name string.
  6308. If file has multiple names, it continues to exist with the other names.
  6309.  
  6310. arguments: (FILENAME)
  6311. Frename-file
  6312. Rename FILE as NEWNAME.  Both args strings.
  6313. If file has names other than FILE, it continues to have those names.
  6314. Signals a `file-already-exists' error if a file NEWNAME already exists
  6315. unless optional third argument OK-IF-ALREADY-EXISTS is non-nil.
  6316. A number as third arg means request confirmation if NEWNAME already exists.
  6317. This is what happens in interactive use with M-x.
  6318.  
  6319. arguments: (FILENAME NEWNAME &optional OK-IF-ALREADY-EXISTS)
  6320. Fadd-name-to-file
  6321. Give FILE additional name NEWNAME.  Both args strings.
  6322. Signals a `file-already-exists' error if a file NEWNAME already exists
  6323. unless optional third argument OK-IF-ALREADY-EXISTS is non-nil.
  6324. A number as third arg means request confirmation if NEWNAME already exists.
  6325. This is what happens in interactive use with M-x.
  6326.  
  6327. arguments: (FILENAME NEWNAME &optional OK-IF-ALREADY-EXISTS)
  6328. Fmake-symbolic-link
  6329. Make a symbolic link to FILENAME, named LINKNAME.  Both args strings.
  6330. Signals a `file-already-exists' error if a file LINKNAME already exists
  6331. unless optional third argument OK-IF-ALREADY-EXISTS is non-nil.
  6332. A number as third arg means request confirmation if LINKNAME already exists.
  6333. This happens for interactive use with M-x.
  6334.  
  6335. arguments: (FILENAME LINKNAME &optional OK-IF-ALREADY-EXISTS)
  6336. Fdefine-logical-name
  6337. Define the job-wide logical name NAME to have the value STRING.
  6338. If STRING is nil or a null string, the logical name NAME is deleted.
  6339.  
  6340. arguments: (VARNAME STRING)
  6341. Fsysnetunam
  6342. Open a network connection to PATH using LOGIN as the login string.
  6343.  
  6344. arguments: (PATH LOGIN)
  6345. Ffile-name-absolute-p
  6346. Return t if file FILENAME specifies an absolute path name.
  6347. On Unix, this is a name starting with a `/' or a `~'.
  6348.  
  6349. arguments: (FILENAME)
  6350. Ffile-exists-p
  6351. Return t if file FILENAME exists.  (This does not mean you can read it.)
  6352. See also `file-readable-p' and `file-attributes'.
  6353.  
  6354. arguments: (FILENAME)
  6355. Ffile-executable-p
  6356. Return t if FILENAME can be executed by you.
  6357. For a directory, this means you can access files in that directory.
  6358.  
  6359. arguments: (FILENAME)
  6360. Ffile-readable-p
  6361. Return t if file FILENAME exists and you can read it.
  6362. See also `file-exists-p' and `file-attributes'.
  6363.  
  6364. arguments: (FILENAME)
  6365. Ffile-writable-p
  6366. Return t if file FILENAME can be written or created by you.
  6367.  
  6368. arguments: (FILENAME)
  6369. Ffile-symlink-p
  6370. Return non-nil if file FILENAME is the name of a symbolic link.
  6371. The value is the name of the file to which it is linked.
  6372. Otherwise returns nil.
  6373.  
  6374. arguments: (FILENAME)
  6375. Ffile-directory-p
  6376. Return t if file FILENAME is the name of a directory as a file.
  6377. A directory name spec may be given instead; then the value is t
  6378. if the directory so specified exists and really is a directory.
  6379.  
  6380. arguments: (FILENAME)
  6381. Ffile-accessible-directory-p
  6382. Return t if file FILENAME is the name of a directory as a file,
  6383. and files in that directory can be opened by you.  In order to use a
  6384. directory as a buffer's current directory, this predicate must return true.
  6385. A directory name spec may be given instead; then the value is t
  6386. if the directory so specified exists and really is a readable and
  6387. searchable directory.
  6388.  
  6389. arguments: (FILENAME)
  6390. Ffile-regular-p
  6391. "Return t if file FILENAME is the name of a regular file.
  6392. This is the sort of file that holds an ordinary stream of data bytes.
  6393.  
  6394. arguments: (FILENAME)
  6395. Ffile-modes
  6396. Return mode bits of FILE, as an integer.
  6397.  
  6398. arguments: (FILENAME)
  6399. Fset-file-modes
  6400. Set mode bits of FILE to MODE (an integer).
  6401. Only the 12 low bits of MODE are used.
  6402.  
  6403. arguments: (FILENAME MODE)
  6404. Fset-default-file-modes
  6405. Set the file permission bits for newly created files.
  6406. MASK should be an integer; if a permission's bit in MASK is 1,
  6407. subsequently created files will not have that permission enabled.
  6408. Only the low 9 bits are used.
  6409. This setting is inherited by subprocesses.
  6410.  
  6411. arguments: (MODE)
  6412. Fdefault-file-modes
  6413. Return the default file protection for created files.
  6414. The umask value determines which permissions are enabled in newly
  6415. created files.  If a permission's bit in the umask is 1, subsequently
  6416. created files will not have that permission enabled.
  6417.  
  6418. arguments: ()
  6419. Funix-sync
  6420. Tell Unix to finish all pending disk updates.
  6421.  
  6422. arguments: ()
  6423. Ffile-newer-than-file-p
  6424. Return t if file FILE1 is newer than file FILE2.
  6425. If FILE1 does not exist, the answer is nil;
  6426. otherwise, if FILE2 does not exist, the answer is t.
  6427.  
  6428. arguments: (FILE1 FILE2)
  6429. Finsert-file-contents-internal
  6430. Insert contents of file FILENAME after point; no coding-system frobbing.
  6431. This function is identical to `insert-file-contents' except for the
  6432. handling of the CODESYS and USED-CODESYS arguments under
  6433. XEmacs/Mule. (When Mule support is not present, both functions are
  6434. identical and ignore the CODESYS and USED-CODESYS arguments.)
  6435.  
  6436. If support for Mule exists in this Emacs, the file is decoded according
  6437. to CODESYS; if omitted, no conversion happens.  If USED-CODESYS is non-nil,
  6438. it should be a symbol, and the actual coding system that was used for the
  6439. decoding is stored into it.  It will in general be different from CODESYS
  6440. if CODESYS specifies automatic encoding detection or end-of-line detection.
  6441.  
  6442. Currently BEG and END refer to byte positions (as opposed to character
  6443. positions), even in Mule. (Fixing this is very difficult.)
  6444.  
  6445. arguments: (FILENAME &optional VISIT BEG END REPLACE CODESYS USED-CODESYS)
  6446. Fwrite-region-internal
  6447. Write current region into specified file; no coding-system frobbing.
  6448. This function is identical to `write-region' except for the handling
  6449. of the CODESYS argument under XEmacs/Mule. (When Mule support is not
  6450. present, both functions are identical and ignore the CODESYS argument.)
  6451. If support for Mule exists in this Emacs, the file is encoded according
  6452. to the value of CODESYS.  If this is nil, no code conversion occurs.
  6453.  
  6454. arguments: (START END FILENAME &optional APPEND VISIT LOCKNAME CODESYS)
  6455. Fcar-less-than-car
  6456. Return t if (car A) is numerically less than (car B).
  6457.  
  6458. arguments: (A B)
  6459. Fcdr-less-than-cdr
  6460. Return t if (cdr A) is numerically less than (cdr B).
  6461.  
  6462. arguments: (A B)
  6463. Fencrypt-string
  6464. Encrypt STRING using KEY.
  6465.  
  6466. arguments: (STRING KEY)
  6467. Fdecrypt-string
  6468. Decrypt STRING using KEY.
  6469.  
  6470. arguments: (STRING KEY)
  6471. Fverify-visited-file-modtime
  6472. Return t if last mod time of BUF's visited file matches what BUF records.
  6473. This means that the file has not been changed since it was visited or saved.
  6474.  
  6475. arguments: (BUF)
  6476. Fclear-visited-file-modtime
  6477. Clear out records of last mod time of visited file.
  6478. Next attempt to save will certainly not complain of a discrepancy.
  6479.  
  6480. arguments: ()
  6481. Fvisited-file-modtime
  6482. Return the current buffer's recorded visited file modification time.
  6483. The value is a list of the form (HIGH . LOW), like the time values
  6484. that `file-attributes' returns.
  6485.  
  6486. arguments: ()
  6487. Fset-visited-file-modtime
  6488. Update buffer's recorded modification time from the visited file's time.
  6489. Useful if the buffer was not read from the file normally
  6490. or if the file itself has been changed for some known benign reason.
  6491. An argument specifies the modification time value to use
  6492. (instead of that of the visited file), in the form of a list
  6493. (HIGH . LOW) or (HIGH LOW).
  6494.  
  6495. arguments: (&optional TIME-LIST)
  6496. Fset-buffer-modtime
  6497. Update BUFFER's recorded modification time from the associated
  6498. file's modtime, if there is an associated file. If not, use the
  6499. current time. In either case, if the optional arg TIME is supplied,
  6500. it will be used if it is either an integer or a cons of two integers.
  6501.  
  6502. arguments: (BUF &optional IN-TIME)
  6503. Fdo-auto-save
  6504. Auto-save all buffers that need it.
  6505. This is all buffers that have auto-saving enabled
  6506. and are changed since last auto-saved.
  6507. Auto-saving writes the buffer into a file
  6508. so that your editing is not lost if the system crashes.
  6509. This file is not the file you visited; that changes only when you save.
  6510. Normally we run the normal hook `auto-save-hook' before saving.
  6511.  
  6512. Non-nil first argument means do not print any message if successful.
  6513. Non-nil second argument means save only current buffer.
  6514.  
  6515. arguments: (&optional NO-MESSAGE CURRENT-ONLY)
  6516. Fset-buffer-auto-saved
  6517. Mark current buffer as auto-saved with its current text.
  6518. No auto-save file will be written until the buffer changes again.
  6519.  
  6520. arguments: ()
  6521. Fclear-buffer-auto-save-failure
  6522. Clear any record of a recent auto-save failure in the current buffer.
  6523.  
  6524. arguments: ()
  6525. Frecent-auto-save-p
  6526. Return t if buffer has been auto-saved since last read in or saved.
  6527.  
  6528. arguments: ()
  6529. Vauto-save-file-format
  6530. *Format in which to write auto-save files.
  6531. Should be a list of symbols naming formats that are defined in `format-alist'.
  6532. If it is t, which is the default, auto-save files are written in the
  6533. same format as a regular save would use.Vvms-stmlf-recfm
  6534. *Non-nil means write new files with record format `stmlf'.
  6535. nil means use format `var'.  This variable is meaningful only on VMS.Vfile-name-handler-alist
  6536. *Alist of elements (REGEXP . HANDLER) for file names handled specially.
  6537. If a file name matches REGEXP, then all I/O on that file is done by calling
  6538. HANDLER.
  6539.  
  6540. The first argument given to HANDLER is the name of the I/O primitive
  6541. to be handled; the remaining arguments are the arguments that were
  6542. passed to that primitive.  For example, if you do
  6543.     (file-exists-p FILENAME)
  6544. and FILENAME is handled by HANDLER, then HANDLER is called like this:
  6545.     (funcall HANDLER 'file-exists-p FILENAME)
  6546. The function `find-file-name-handler' checks this list for a handler
  6547. for its argument.Vafter-insert-file-functions
  6548. A list of functions to be called at the end of `insert-file-contents'.
  6549. Each is passed one argument, the number of bytes inserted.  It should return
  6550. the new byte count, and leave point the same.  If `insert-file-contents' is
  6551. intercepted by a handler from `file-name-handler-alist', that handler is
  6552. responsible for calling the after-insert-file-functions if appropriate.Vwrite-region-annotate-functions
  6553. A list of functions to be called at the start of `write-region'.
  6554. Each is passed two arguments, START and END, as for `write-region'.
  6555. It should return a list of pairs (POSITION . STRING) of strings to be
  6556. effectively inserted at the specified positions of the file being written
  6557. (1 means to insert before the first byte written).  The POSITIONs must be
  6558. sorted into increasing order.  If there are several functions in the list,
  6559. the several lists are merged destructively.Vwrite-region-annotations-so-far
  6560. When an annotation function is called, this holds the previous annotations.
  6561. These are the annotations made by other annotation functions
  6562. that were already called.  See also `write-region-annotate-functions'.Vinhibit-file-name-handlers
  6563. A list of file name handlers that temporarily should not be used.
  6564. This applies only to the operation `inhibit-file-name-operation'.Vinhibit-file-name-operation
  6565. The operation for which `inhibit-file-name-handlers' is applicable.Vauto-save-list-file-name
  6566. File name in which we write a list of all auto save file names.Vdisable-auto-save-when-buffer-shrinks
  6567. If non-nil, auto-saving is disabled when a buffer shrinks too much.
  6568. This is to prevent you from losing your edits if you accidentally
  6569. delete a large chunk of the buffer and don't notice it until too late.
  6570. Saving the buffer normally turns auto-save back on.Facos
  6571. Return the inverse cosine of ARG.
  6572.  
  6573. arguments: (ARG)
  6574. Fasin
  6575. Return the inverse sine of ARG.
  6576.  
  6577. arguments: (ARG)
  6578. Fatan
  6579. Return the inverse tangent of ARG.
  6580.  
  6581. arguments: (ARG1 &optional ARG2)
  6582. Fcos
  6583. Return the cosine of ARG.
  6584.  
  6585. arguments: (ARG)
  6586. Fsin
  6587. Return the sine of ARG.
  6588.  
  6589. arguments: (ARG)
  6590. Ftan
  6591. Return the tangent of ARG.
  6592.  
  6593. arguments: (ARG)
  6594. Fbessel-j0
  6595. Return the bessel function j0 of ARG.
  6596.  
  6597. arguments: (ARG)
  6598. Fbessel-j1
  6599. Return the bessel function j1 of ARG.
  6600.  
  6601. arguments: (ARG)
  6602. Fbessel-jn
  6603. Return the order N bessel function output jn of ARG.
  6604. The first arg (the order) is truncated to an integer.
  6605.  
  6606. arguments: (ARG1 ARG2)
  6607. Fbessel-y0
  6608. Return the bessel function y0 of ARG.
  6609.  
  6610. arguments: (ARG)
  6611. Fbessel-y1
  6612. Return the bessel function y1 of ARG.
  6613.  
  6614. arguments: (ARG)
  6615. Fbessel-yn
  6616. Return the order N bessel function output yn of ARG.
  6617. The first arg (the order) is truncated to an integer.
  6618.  
  6619. arguments: (ARG1 ARG2)
  6620. Ferf
  6621. Return the mathematical error function of ARG.
  6622.  
  6623. arguments: (ARG)
  6624. Ferfc
  6625. Return the complementary error function of ARG.
  6626.  
  6627. arguments: (ARG)
  6628. Flog-gamma
  6629. Return the log gamma of ARG.
  6630.  
  6631. arguments: (ARG)
  6632. Fexp
  6633. Return the exponential base e of ARG.
  6634.  
  6635. arguments: (ARG)
  6636. Fexpt
  6637. Return the exponential ARG1 ** ARG2.
  6638.  
  6639. arguments: (ARG1 ARG2)
  6640. Flog
  6641. Return the natural logarithm of ARG.
  6642. If second optional argument BASE is given, return log ARG using that base.
  6643.  
  6644. arguments: (ARG &optional BASE)
  6645. Flog10
  6646. Return the logarithm base 10 of ARG.
  6647.  
  6648. arguments: (ARG)
  6649. Fsqrt
  6650. Return the square root of ARG.
  6651.  
  6652. arguments: (ARG)
  6653. Fcube-root
  6654. Return the cube root of ARG.
  6655.  
  6656. arguments: (ARG)
  6657. Facosh
  6658. Return the inverse hyperbolic cosine of ARG.
  6659.  
  6660. arguments: (ARG)
  6661. Fasinh
  6662. Return the inverse hyperbolic sine of ARG.
  6663.  
  6664. arguments: (ARG)
  6665. Fatanh
  6666. Return the inverse hyperbolic tangent of ARG.
  6667.  
  6668. arguments: (ARG)
  6669. Fcosh
  6670. Return the hyperbolic cosine of ARG.
  6671.  
  6672. arguments: (ARG)
  6673. Fsinh
  6674. Return the hyperbolic sine of ARG.
  6675.  
  6676. arguments: (ARG)
  6677. Ftanh
  6678. Return the hyperbolic tangent of ARG.
  6679.  
  6680. arguments: (ARG)
  6681. Fabs
  6682. Return the absolute value of ARG.
  6683.  
  6684. arguments: (ARG)
  6685. Ffloat
  6686. Return the floating point number equal to ARG.
  6687.  
  6688. arguments: (ARG)
  6689. Flogb
  6690. Return largest integer <= the base 2 log of the magnitude of ARG.
  6691. This is the same as the exponent of a float.
  6692.  
  6693. arguments: (ARG)
  6694. Fceiling
  6695. Return the smallest integer no less than ARG.  (Round toward +inf.)
  6696.  
  6697. arguments: (ARG)
  6698. Ffloor
  6699. Return the largest integer no greater than ARG.  (Round towards -inf.)
  6700. With optional DIVISOR, return the largest integer no greater than ARG/DIVISOR.
  6701.  
  6702. arguments: (ARG &optional DIVISOR)
  6703. Fround
  6704. Return the nearest integer to ARG.
  6705.  
  6706. arguments: (ARG)
  6707. Ftruncate
  6708. Truncate a floating point number to an integer.
  6709. Rounds the value toward zero.
  6710.  
  6711. arguments: (ARG)
  6712. Ffceiling
  6713. Return the smallest integer no less than ARG, as a float.
  6714. (Round toward +inf.)
  6715.  
  6716. arguments: (ARG)
  6717. Fffloor
  6718. Return the largest integer no greater than ARG, as a float.
  6719. (Round towards -inf.)
  6720.  
  6721. arguments: (ARG)
  6722. Ffround
  6723. Return the nearest integer to ARG, as a float.
  6724.  
  6725. arguments: (ARG)
  6726. Fftruncate
  6727. Truncate a floating point number to an integral float value.
  6728. Rounds the value toward zero.
  6729.  
  6730. arguments: (ARG)
  6731. Fidentity
  6732. Return the argument unchanged.
  6733.  
  6734. arguments: (ARG)
  6735. Frandom
  6736. Return a pseudo-random number.
  6737. All integers representable in Lisp are equally likely.
  6738.   On most systems, this is 28 bits' worth.
  6739. With positive integer argument N, return random number in interval [0,N).
  6740. With argument t, set the random number seed from the current time and pid.
  6741.  
  6742. arguments: (&optional LIMIT)
  6743. Flength
  6744. Return the length of vector, bit vector, list or string SEQUENCE.
  6745.  
  6746. arguments: (OBJ)
  6747. Fsafe-length
  6748. Return the length of a list, but avoid error or infinite loop.
  6749. This function never gets an error.  If LIST is not really a list,
  6750. it returns 0.  If LIST is circular, it returns a finite value
  6751. which is at least the number of distinct elements.
  6752.  
  6753. arguments: (LIST)
  6754. Fstring-equal
  6755. T if two strings have identical contents.
  6756. Case is significant.  Text properties are ignored.
  6757. (Under XEmacs, `equal' also ignores text properties and extents in
  6758. strings, but this is not the case under FSF Emacs.)
  6759. Symbols are also allowed; their print names are used instead.
  6760.  
  6761. arguments: (S1 S2)
  6762. Fstring-lessp
  6763. T if first arg string is less than second in lexicographic order.
  6764. If I18N2 support (but not Mule support) was compiled in, ordering is
  6765. determined by the locale. (Case is significant for the default C locale.)
  6766. In all other cases, comparison is simply done on a character-by-
  6767. character basis using the numeric value of a character. (Note that
  6768. this may not produce particularly meaningful results under Mule if
  6769. characters from different charsets are being compared.)
  6770.  
  6771. Symbols are also allowed; their print names are used instead.
  6772.  
  6773. The reason that the I18N2 locale-specific collation is not used under
  6774. Mule is that the locale model of internationalization does not handle
  6775. multiple charsets and thus has no hope of working properly under Mule.
  6776. What we really should do is create a collation table over all built-in
  6777. charsets.  This is extremely difficult to do from scratch, however.
  6778.  
  6779. Unicode is a good first step towards solving this problem.  In fact,
  6780. it is quite likely that a collation table exists (or will exist) for
  6781. Unicode.  When Unicode support is added to XEmacs/Mule, this problem
  6782. may be solved.
  6783.  
  6784. arguments: (S1 S2)
  6785. Fstring-modified-tick
  6786. Return STRING's tick counter, incremented for each change to the string.
  6787. Each string has a tick counter which is incremented each time the contents
  6788. of the string are changed (e.g. with `aset').  It wraps around occasionally.
  6789.  
  6790. arguments: (STRING)
  6791. Fappend
  6792. Concatenate all the arguments and make the result a list.
  6793. The result is a list whose elements are the elements of all the arguments.
  6794. Each argument may be a list, vector, bit vector, or string.
  6795. The last argument is not copied, just used as the tail of the new list.
  6796. Also see: `nconc'.Fconcat
  6797. Concatenate all the arguments and make the result a string.
  6798. The result is a string whose elements are the elements of all the arguments.
  6799. Each argument may be a string or a list or vector of characters.
  6800.  
  6801. Do not use individual integers as arguments!
  6802. The behavior of `concat' in that case will be changed later!
  6803. If your program passes an integer as an argument to `concat',
  6804. you should change it right away not to do so.Fvconcat
  6805. Concatenate all the arguments and make the result a vector.
  6806. The result is a vector whose elements are the elements of all the arguments.
  6807. Each argument may be a list, vector, bit vector, or string.Fbvconcat
  6808. Concatenate all the arguments and make the result a bit vector.
  6809. The result is a bit vector whose elements are the elements of all the
  6810. arguments.  Each argument may be a list, vector, bit vector, or string.Fcopy-sequence
  6811. Return a copy of a list, vector, bit vector or string.
  6812. The elements of a list or vector are not copied; they are shared
  6813. with the original.
  6814.  
  6815. arguments: (ARG)
  6816. Fcopy-alist
  6817. Return a copy of ALIST.
  6818. This is an alist which represents the same mapping from objects to objects,
  6819. but does not share the alist structure with ALIST.
  6820. The objects mapped (cars and cdrs of elements of the alist)
  6821. are shared, however.
  6822. Elements of ALIST that are not conses are also shared.
  6823.  
  6824. arguments: (ALIST)
  6825. Fcopy-tree
  6826. Return a copy of a list and substructures.
  6827. The argument is copied, and any lists contained within it are copied
  6828. recursively.  Circularities and shared substructures are not preserved.
  6829. Second arg VECP causes vectors to be copied, too.  Strings and bit vectors
  6830. are not copied.
  6831.  
  6832. arguments: (ARG &optional VECP)
  6833. Fsubstring
  6834. Return a substring of STRING, starting at index FROM and ending before TO.
  6835. TO may be nil or omitted; then the substring runs to the end of STRING.
  6836. If FROM or TO is negative, it counts from the end.
  6837. Relevant parts of the string-extent-data are copied in the new string.
  6838.  
  6839. arguments: (STRING FROM &optional TO)
  6840. Fsubseq
  6841. Return a subsequence of SEQ, starting at index FROM and ending before TO.
  6842. TO may be nil or omitted; then the subsequence runs to the end of SEQ.
  6843. If FROM or TO is negative, it counts from the end.
  6844. The resulting subsequence is always the same type as the original
  6845.  sequence.
  6846. If SEQ is a string, relevant parts of the string-extent-data are copied
  6847.  in the new string.
  6848.  
  6849. arguments: (SEQ FROM &optional TO)
  6850. Fnthcdr
  6851. Take cdr N times on LIST, returns the result.
  6852.  
  6853. arguments: (N LIST)
  6854. Fnth
  6855. Return the Nth element of LIST.
  6856. N counts from zero.  If LIST is not that long, nil is returned.
  6857.  
  6858. arguments: (N LIST)
  6859. Felt
  6860. Return element of SEQUENCE at index N.
  6861.  
  6862. arguments: (SEQ N)
  6863. Fmember
  6864. Return non-nil if ELT is an element of LIST.  Comparison done with `equal'.
  6865. The value is actually the tail of LIST whose car is ELT.
  6866.  
  6867. arguments: (ELT LIST)
  6868. Fold-member
  6869. Return non-nil if ELT is an element of LIST.  Comparison done with `old-equal'.
  6870. The value is actually the tail of LIST whose car is ELT.
  6871. This function is provided only for byte-code compatibility with v19.
  6872. Do not use it.
  6873.  
  6874. arguments: (ELT LIST)
  6875. Fmemq
  6876. Return non-nil if ELT is an element of LIST.  Comparison done with `eq'.
  6877. The value is actually the tail of LIST whose car is ELT.
  6878.  
  6879. arguments: (ELT LIST)
  6880. Fold-memq
  6881. Return non-nil if ELT is an element of LIST.  Comparison done with `old-eq'.
  6882. The value is actually the tail of LIST whose car is ELT.
  6883. This function is provided only for byte-code compatibility with v19.
  6884. Do not use it.
  6885.  
  6886. arguments: (ELT LIST)
  6887. Fassoc
  6888. Return non-nil if KEY is `equal' to the car of an element of LIST.
  6889. The value is actually the element of LIST whose car equals KEY.
  6890.  
  6891. arguments: (KEY LIST)
  6892. Fold-assoc
  6893. Return non-nil if KEY is `old-equal' to the car of an element of LIST.
  6894. The value is actually the element of LIST whose car equals KEY.
  6895.  
  6896. arguments: (KEY LIST)
  6897. Fassq
  6898. Return non-nil if KEY is `eq' to the car of an element of LIST.
  6899. The value is actually the element of LIST whose car is KEY.
  6900. Elements of LIST that are not conses are ignored.
  6901.  
  6902. arguments: (KEY LIST)
  6903. Fold-assq
  6904. Return non-nil if KEY is `old-eq' to the car of an element of LIST.
  6905. The value is actually the element of LIST whose car is KEY.
  6906. Elements of LIST that are not conses are ignored.
  6907. This function is provided only for byte-code compatibility with v19.
  6908. Do not use it.
  6909.  
  6910. arguments: (KEY LIST)
  6911. Frassoc
  6912. Return non-nil if KEY is `equal' to the cdr of an element of LIST.
  6913. The value is actually the element of LIST whose cdr equals KEY.
  6914.  
  6915. arguments: (KEY LIST)
  6916. Fold-rassoc
  6917. Return non-nil if KEY is `old-equal' to the cdr of an element of LIST.
  6918. The value is actually the element of LIST whose cdr equals KEY.
  6919.  
  6920. arguments: (KEY LIST)
  6921. Frassq
  6922. Return non-nil if KEY is `eq' to the cdr of an element of LIST.
  6923. The value is actually the element of LIST whose cdr is KEY.
  6924.  
  6925. arguments: (KEY LIST)
  6926. Fold-rassq
  6927. Return non-nil if KEY is `old-eq' to the cdr of an element of LIST.
  6928. The value is actually the element of LIST whose cdr is KEY.
  6929.  
  6930. arguments: (KEY LIST)
  6931. Fdelete
  6932. Delete by side effect any occurrences of ELT as a member of LIST.
  6933. The modified LIST is returned.  Comparison is done with `equal'.
  6934. If the first member of LIST is ELT, there is no way to remove it by side
  6935. effect; therefore, write `(setq foo (delete element foo))' to be sure
  6936. of changing the value of `foo'.
  6937. Also see: `remove'.
  6938.  
  6939. arguments: (ELT LIST)
  6940. Fold-delete
  6941. Delete by side effect any occurrences of ELT as a member of LIST.
  6942. The modified LIST is returned.  Comparison is done with `old-equal'.
  6943. If the first member of LIST is ELT, there is no way to remove it by side
  6944. effect; therefore, write `(setq foo (delete element foo))' to be sure
  6945. of changing the value of `foo'.
  6946.  
  6947. arguments: (ELT LIST)
  6948. Fdelq
  6949. Delete by side effect any occurrences of ELT as a member of LIST.
  6950. The modified LIST is returned.  Comparison is done with `eq'.
  6951. If the first member of LIST is ELT, there is no way to remove it by side
  6952. effect; therefore, write `(setq foo (delq element foo))' to be sure of
  6953. changing the value of `foo'.
  6954.  
  6955. arguments: (ELT LIST)
  6956. Fold-delq
  6957. Delete by side effect any occurrences of ELT as a member of LIST.
  6958. The modified LIST is returned.  Comparison is done with `old-eq'.
  6959. If the first member of LIST is ELT, there is no way to remove it by side
  6960. effect; therefore, write `(setq foo (delq element foo))' to be sure of
  6961. changing the value of `foo'.
  6962.  
  6963. arguments: (ELT LIST)
  6964. Fremassoc
  6965. Delete by side effect any elements of LIST whose car is `equal' to KEY.
  6966. The modified LIST is returned.  If the first member of LIST has a car
  6967. that is `equal' to KEY, there is no way to remove it by side effect;
  6968. therefore, write `(setq foo (remassoc key foo))' to be sure of changing
  6969. the value of `foo'.
  6970.  
  6971. arguments: (KEY LIST)
  6972. Fremassq
  6973. Delete by side effect any elements of LIST whose car is `eq' to KEY.
  6974. The modified LIST is returned.  If the first member of LIST has a car
  6975. that is `eq' to KEY, there is no way to remove it by side effect;
  6976. therefore, write `(setq foo (remassq key foo))' to be sure of changing
  6977. the value of `foo'.
  6978.  
  6979. arguments: (KEY LIST)
  6980. Fremrassoc
  6981. Delete by side effect any elements of LIST whose cdr is `equal' to VALUE.
  6982. The modified LIST is returned.  If the first member of LIST has a car
  6983. that is `equal' to VALUE, there is no way to remove it by side effect;
  6984. therefore, write `(setq foo (remrassoc value foo))' to be sure of changing
  6985. the value of `foo'.
  6986.  
  6987. arguments: (VALUE LIST)
  6988. Fremrassq
  6989. Delete by side effect any elements of LIST whose cdr is `eq' to VALUE.
  6990. The modified LIST is returned.  If the first member of LIST has a car
  6991. that is `eq' to VALUE, there is no way to remove it by side effect;
  6992. therefore, write `(setq foo (remrassq value foo))' to be sure of changing
  6993. the value of `foo'.
  6994.  
  6995. arguments: (VALUE LIST)
  6996. Fnreverse
  6997. Reverse LIST by modifying cdr pointers.
  6998. Returns the beginning of the reversed list.
  6999. Also see: `reverse'.
  7000.  
  7001. arguments: (LIST)
  7002. Freverse
  7003. Reverse LIST, copying.  Returns the beginning of the reversed list.
  7004. See also the function `nreverse', which is used more often.
  7005.  
  7006. arguments: (LIST)
  7007. Fsort
  7008. Sort LIST, stably, comparing elements using PREDICATE.
  7009. Returns the sorted list.  LIST is modified by side effects.
  7010. PREDICATE is called with two elements of LIST, and should return T
  7011. if the first element is "less" than the second.
  7012.  
  7013. arguments: (LIST PRED)
  7014. Fplists-eq
  7015. Return non-nil if property lists A and B are `eq'.
  7016. A property list is an alternating list of keywords and values.
  7017.  This function does order-insensitive comparisons of the property lists:
  7018.  For example, the property lists '(a 1 b 2) and '(b 2 a 1) are equal.
  7019.  Comparison between values is done using `eq'.  See also `plists-equal'.
  7020. If optional arg NIL-MEANS-NOT-PRESENT is non-nil, then a property with
  7021.  a nil value is ignored.  This feature is a virus that has infected
  7022.  old Lisp implementations, but should not be used except for backward
  7023.  compatibility.
  7024.  
  7025. arguments: (A B &optional NIL-MEANS-NOT-PRESENT)
  7026. Fplists-equal
  7027. Return non-nil if property lists A and B are `equal'.
  7028. A property list is an alternating list of keywords and values.  This
  7029.  function does order-insensitive comparisons of the property lists: For
  7030.  example, the property lists '(a 1 b 2) and '(b 2 a 1) are equal.
  7031.  Comparison between values is done using `equal'.  See also `plists-eq'.
  7032. If optional arg NIL-MEANS-NOT-PRESENT is non-nil, then a property with
  7033.  a nil value is ignored.  This feature is a virus that has infected
  7034.  old Lisp implementations, but should not be used except for backward
  7035.  compatibility.
  7036.  
  7037. arguments: (A B &optional NIL-MEANS-NOT-PRESENT)
  7038. Flax-plists-eq
  7039. Return non-nil if lax property lists A and B are `eq'.
  7040. A property list is an alternating list of keywords and values.
  7041.  This function does order-insensitive comparisons of the property lists:
  7042.  For example, the property lists '(a 1 b 2) and '(b 2 a 1) are equal.
  7043.  Comparison between values is done using `eq'.  See also `plists-equal'.
  7044. A lax property list is like a regular one except that comparisons between
  7045.  keywords is done using `equal' instead of `eq'.
  7046. If optional arg NIL-MEANS-NOT-PRESENT is non-nil, then a property with
  7047.  a nil value is ignored.  This feature is a virus that has infected
  7048.  old Lisp implementations, but should not be used except for backward
  7049.  compatibility.
  7050.  
  7051. arguments: (A B &optional NIL-MEANS-NOT-PRESENT)
  7052. Flax-plists-equal
  7053. Return non-nil if lax property lists A and B are `equal'.
  7054. A property list is an alternating list of keywords and values.  This
  7055.  function does order-insensitive comparisons of the property lists: For
  7056.  example, the property lists '(a 1 b 2) and '(b 2 a 1) are equal.
  7057.  Comparison between values is done using `equal'.  See also `plists-eq'.
  7058. A lax property list is like a regular one except that comparisons between
  7059.  keywords is done using `equal' instead of `eq'.
  7060. If optional arg NIL-MEANS-NOT-PRESENT is non-nil, then a property with
  7061.  a nil value is ignored.  This feature is a virus that has infected
  7062.  old Lisp implementations, but should not be used except for backward
  7063.  compatibility.
  7064.  
  7065. arguments: (A B &optional NIL-MEANS-NOT-PRESENT)
  7066. Fplist-get
  7067. Extract a value from a property list.
  7068. PLIST is a property list, which is a list of the form
  7069. (PROP1 VALUE1 PROP2 VALUE2...).  This function returns the value
  7070. corresponding to the given PROP, or DEFAULT if PROP is not
  7071. one of the properties on the list.
  7072.  
  7073. arguments: (PLIST PROP &optional DEFAULT)
  7074. Fplist-put
  7075. Change value in PLIST of PROP to VAL.
  7076. PLIST is a property list, which is a list of the form (PROP1 VALUE1
  7077. PROP2 VALUE2 ...).  PROP is usually a symbol and VAL is any object.
  7078. If PROP is already a property on the list, its value is set to VAL,
  7079. otherwise the new PROP VAL pair is added.  The new plist is returned;
  7080. use `(setq x (plist-put x prop val))' to be sure to use the new value.
  7081. The PLIST is modified by side effects.
  7082.  
  7083. arguments: (PLIST PROP VAL)
  7084. Fplist-remprop
  7085. Remove from PLIST the property PROP and its value.
  7086. PLIST is a property list, which is a list of the form (PROP1 VALUE1
  7087. PROP2 VALUE2 ...).  PROP is usually a symbol.  The new plist is
  7088. returned; use `(setq x (plist-remprop x prop val))' to be sure to use
  7089. the new value.  The PLIST is modified by side effects.
  7090.  
  7091. arguments: (PLIST PROP)
  7092. Fplist-member
  7093. Return t if PROP has a value specified in PLIST.
  7094.  
  7095. arguments: (PLIST PROP)
  7096. Fcheck-valid-plist
  7097. Given a plist, signal an error if there is anything wrong with it.
  7098. This means that it's a malformed or circular plist.
  7099.  
  7100. arguments: (PLIST)
  7101. Fvalid-plist-p
  7102. Given a plist, return non-nil if its format is correct.
  7103. If it returns nil, `check-valid-plist' will signal an error when given
  7104. the plist; that means it's a malformed or circular plist or has non-symbols
  7105. as keywords.
  7106.  
  7107. arguments: (PLIST)
  7108. Fcanonicalize-plist
  7109. Destructively remove any duplicate entries from a plist.
  7110. In such cases, the first entry applies.
  7111.  
  7112. If optional arg NIL-MEANS-NOT-PRESENT is non-nil, then a property with
  7113.  a nil value is removed.  This feature is a virus that has infected
  7114.  old Lisp implementations, but should not be used except for backward
  7115.  compatibility.
  7116.  
  7117. The new plist is returned.  If NIL-MEANS-NOT-PRESENT is given, the
  7118.  return value may not be EQ to the passed-in value, so make sure to
  7119.  `setq' the value back into where it came from.
  7120.  
  7121. arguments: (PLIST &optional NIL-MEANS-NOT-PRESENT)
  7122. Flax-plist-get
  7123. Extract a value from a lax property list.
  7124.  
  7125. LAX-PLIST is a lax property list, which is a list of the form (PROP1
  7126. VALUE1 PROP2 VALUE2...), where comparions between properties is done
  7127. using `equal' instead of `eq'.  This function returns the value
  7128. corresponding to the given PROP, or DEFAULT if PROP is not one of the
  7129. properties on the list.
  7130.  
  7131. arguments: (LAX-PLIST PROP &optional DEFAULT)
  7132. Flax-plist-put
  7133. Change value in LAX-PLIST of PROP to VAL.
  7134. LAX-PLIST is a lax property list, which is a list of the form (PROP1
  7135. VALUE1 PROP2 VALUE2...), where comparions between properties is done
  7136. using `equal' instead of `eq'.  PROP is usually a symbol and VAL is
  7137. any object.  If PROP is already a property on the list, its value is
  7138. set to VAL, otherwise the new PROP VAL pair is added.  The new plist
  7139. is returned; use `(setq x (lax-plist-put x prop val))' to be sure to
  7140. use the new value.  The LAX-PLIST is modified by side effects.
  7141.  
  7142. arguments: (LAX-PLIST PROP VAL)
  7143. Flax-plist-remprop
  7144. Remove from LAX-PLIST the property PROP and its value.
  7145. LAX-PLIST is a lax property list, which is a list of the form (PROP1
  7146. VALUE1 PROP2 VALUE2...), where comparions between properties is done
  7147. using `equal' instead of `eq'.  PROP is usually a symbol.  The new
  7148. plist is returned; use `(setq x (lax-plist-remprop x prop val))' to be
  7149. sure to use the new value.  The LAX-PLIST is modified by side effects.
  7150.  
  7151. arguments: (LAX-PLIST PROP)
  7152. Flax-plist-member
  7153. Return t if PROP has a value specified in LAX-PLIST.
  7154. LAX-PLIST is a lax property list, which is a list of the form (PROP1
  7155. VALUE1 PROP2 VALUE2...), where comparions between properties is done
  7156. using `equal' instead of `eq'.
  7157.  
  7158. arguments: (LAX-PLIST PROP)
  7159. Fcanonicalize-lax-plist
  7160. Destructively remove any duplicate entries from a lax plist.
  7161. In such cases, the first entry applies.
  7162.  
  7163. If optional arg NIL-MEANS-NOT-PRESENT is non-nil, then a property with
  7164.  a nil value is removed.  This feature is a virus that has infected
  7165.  old Lisp implementations, but should not be used except for backward
  7166.  compatibility.
  7167.  
  7168. The new plist is returned.  If NIL-MEANS-NOT-PRESENT is given, the
  7169.  return value may not be EQ to the passed-in value, so make sure to
  7170.  `setq' the value back into where it came from.
  7171.  
  7172. arguments: (LAX-PLIST &optional NIL-MEANS-NOT-PRESENT)
  7173. Fdestructive-alist-to-plist
  7174. Convert association list ALIST into the equivalent property-list form.
  7175. The plist is returned.  This converts from
  7176.  
  7177. ((a . 1) (b . 2) (c . 3))
  7178.  
  7179. into
  7180.  
  7181. (a 1 b 2 c 3)
  7182.  
  7183. The original alist is destroyed in the process of constructing the plist.
  7184. See also `alist-to-plist'.
  7185.  
  7186. arguments: (ALIST)
  7187. Fget
  7188. Return the value of OBJECT's PROPNAME property.
  7189. This is the last VALUE stored with `(put OBJECT PROPNAME VALUE)'.
  7190. If there is no such property, return optional third arg DEFAULT
  7191. (which defaults to `nil').  OBJECT can be a symbol, face, extent,
  7192. or string.  See also `put', `remprop', and `object-plist'.
  7193.  
  7194. arguments: (OBJECT PROPNAME &optional DEFAULT)
  7195. Fput
  7196. Store OBJECT's PROPNAME property with value VALUE.
  7197. It can be retrieved with `(get OBJECT PROPNAME)'.  OBJECT can be a
  7198. symbol, face, extent, or string.
  7199.  
  7200. For a string, no properties currently have predefined meanings.
  7201. For the predefined properties for extents, see `set-extent-property'.
  7202. For the predefined properties for faces, see `set-face-property'.
  7203.  
  7204. See also `get', `remprop', and `object-plist'.
  7205.  
  7206. arguments: (OBJECT PROPNAME VALUE)
  7207. Fremprop
  7208. Remove from OBJECT's property list the property PROPNAME and its
  7209. value.  OBJECT can be a symbol, face, extent, or string.  Returns
  7210. non-nil if the property list was actually changed (i.e. if PROPNAME
  7211. was present in the property list).  See also `get', `put', and
  7212. `object-plist'.
  7213.  
  7214. arguments: (OBJECT PROPNAME)
  7215. Fobject-plist
  7216. Return a property list of OBJECT's props.
  7217. For a symbol this is equivalent to `symbol-plist'.
  7218. Do not modify the property list directly; this may or may not have
  7219. the desired effects. (In particular, for a property with a special
  7220. interpretation, this will probably have no effect at all.)
  7221.  
  7222. arguments: (OBJECT)
  7223. Fequal
  7224. T if two Lisp objects have similar structure and contents.
  7225. They must have the same data type.
  7226. Conses are compared by comparing the cars and the cdrs.
  7227. Vectors and strings are compared element by element.
  7228. Numbers are compared by value.  Symbols must match exactly.
  7229.  
  7230. arguments: (O1 O2)
  7231. Fold-equal
  7232. T if two Lisp objects have similar structure and contents.
  7233. They must have the same data type.
  7234. (Note, however, that an exception is made for characters and integers;
  7235. this is known as the "char-int confoundance disease." See `eq' and
  7236. `old-eq'.)
  7237. This function is provided only for byte-code compatibility with v19.
  7238. Do not use it.
  7239.  
  7240. arguments: (O1 O2)
  7241. Ffillarray
  7242. Store each element of ARRAY with ITEM.
  7243. ARRAY is a vector, bit vector, or string.
  7244.  
  7245. arguments: (ARRAY ITEM)
  7246. Fnconc
  7247. Concatenate any number of lists by altering them.
  7248. Only the last argument is not altered, and need not be a list.
  7249. Also see: `append'.Fmapconcat
  7250. Apply FN to each element of SEQ, and concat the results as strings.
  7251. In between each pair of results, stick in SEP.
  7252. Thus, " " as SEP results in spaces between the values returned by FN.
  7253.  
  7254. arguments: (FN SEQ SEP)
  7255. Fmapcar
  7256. Apply FUNCTION to each element of SEQUENCE, and make a list of the results.
  7257. The result is a list just as long as SEQUENCE.
  7258. SEQUENCE may be a list, a vector, a bit vector, or a string.
  7259.  
  7260. arguments: (FN SEQ)
  7261. Fmapvector
  7262. Apply FUNCTION to each element of SEQUENCE, making a vector of the results.
  7263. The result is a vector of the same length as SEQUENCE.
  7264. SEQUENCE may be a list, a vector or a string.
  7265.  
  7266. arguments: (FN SEQ)
  7267. Fmapc
  7268. Apply FUNCTION to each element of SEQUENCE.
  7269. SEQUENCE may be a list, a vector, a bit vector, or a string.
  7270. This function is like `mapcar' but does not accumulate the results,
  7271. which is more efficient if you do not use the results.
  7272.  
  7273. arguments: (FN SEQ)
  7274. Fload-average
  7275. Return list of 1 minute, 5 minute and 15 minute load averages.
  7276. Each of the three load averages is multiplied by 100,
  7277. then converted to integer.
  7278.  
  7279. If the 5-minute or 15-minute load averages are not available, return a
  7280. shortened list, containing only those averages which are available.
  7281.  
  7282. On some systems, this won't work due to permissions on /dev/kmem in
  7283. which case you can't use this.
  7284.  
  7285. arguments: ()
  7286. Ffeaturep
  7287. Return non-nil if feature FEXP is present in this Emacs.
  7288. Use this to conditionalize execution of lisp code based on the
  7289.  presence or absence of emacs or environment extensions.
  7290. FEXP can be a symbol, a number, or a list.
  7291. If it is a symbol, that symbol is looked up in the `features' variable,
  7292.  and non-nil will be returned if found.
  7293. If it is a number, the function will return non-nil if this Emacs
  7294.  has an equal or greater version number than FEXP.
  7295. If it is a list whose car is the symbol `and', it will return
  7296.  non-nil if all the features in its cdr are non-nil.
  7297. If it is a list whose car is the symbol `or', it will return non-nil
  7298.  if any of the features in its cdr are non-nil.
  7299. If it is a list whose car is the symbol `not', it will return
  7300.  non-nil if the feature is not present.
  7301.  
  7302. Examples:
  7303.  
  7304.   (featurep 'xemacs)
  7305.     => ; Non-nil on XEmacs.
  7306.  
  7307.   (featurep '(and xemacs gnus))
  7308.     => ; Non-nil on XEmacs with Gnus loaded.
  7309.  
  7310.   (featurep '(or tty-frames (and emacs 19.30)))
  7311.     => ; Non-nil if this Emacs supports TTY frames.
  7312.  
  7313.   (featurep '(or (and xemacs 19.15) (and emacs 19.34)))
  7314.     => ; Non-nil on XEmacs 19.15 and later, or FSF Emacs 19.34 and later.
  7315.  
  7316. NOTE: The advanced arguments of this function (anything other than a
  7317. symbol) are not yet supported by FSF Emacs.  If you feel they are useful
  7318. for supporting multiple Emacs variants, lobby Richard Stallman at
  7319. <bug-gnu-emacs@prep.ai.mit.edu>.
  7320.  
  7321. arguments: (FEXP)
  7322. Fprovide
  7323. Announce that FEATURE is a feature of the current Emacs.
  7324. This function updates the value of the variable `features'.
  7325.  
  7326. arguments: (FEATURE)
  7327. Frequire
  7328. If feature FEATURE is not loaded, load it from FILENAME.
  7329. If FEATURE is not a member of the list `features', then the feature
  7330. is not loaded; so load the file FILENAME.
  7331. If FILENAME is omitted, the printname of FEATURE is used as the file name.
  7332.  
  7333. arguments: (FEATURE &optional FILE-NAME)
  7334. Vfeatures
  7335. A list of symbols which are the features of the executing emacs.
  7336. Used by `featurep' and `require', and altered by `provide'.Fbuffer-syntactic-context
  7337. Return the syntactic context of BUFFER at point.
  7338. If BUFFER is nil or omitted, the current buffer is assumed.
  7339. The returned value is one of the following symbols:
  7340.  
  7341.     nil        ; meaning no special interpretation
  7342.     string        ; meaning point is within a string
  7343.     comment        ; meaning point is within a line comment
  7344.     block-comment    ; meaning point is within a block comment
  7345.  
  7346. See also the function `buffer-syntactic-context-depth', which returns
  7347. the current nesting-depth within all parenthesis-syntax delimiters
  7348. and the function `syntactically-sectionize', which will map a function
  7349. over each syntactic context in a region.
  7350.  
  7351. WARNING: this may alter match-data.
  7352.  
  7353. arguments: (&optional BUFFER)
  7354. Fbuffer-syntactic-context-depth
  7355. Return the depth within all parenthesis-syntax delimiters at point.
  7356. If BUFFER is nil or omitted, the current buffer is assumed.
  7357. WARNING: this may alter match-data.
  7358.  
  7359. arguments: (&optional BUFFER)
  7360. Fsyntactically-sectionize
  7361. Calls FUNCTION for each contiguous syntactic context in the region.
  7362. Calls the given function with four arguments: the start and end of the
  7363. region, a symbol representing the syntactic context, and the current
  7364. depth (as returned by the functions `buffer-syntactic-context' and
  7365. `buffer-syntactic-context-depth').  When this function is called, the
  7366. current buffer will be set to BUFFER.
  7367.  
  7368. WARNING: this may alter match-data.
  7369.  
  7370. arguments: (FUNCTION START END &optional BUFFER)
  7371. Fmake-frame
  7372. Create a new frame, displaying the current buffer.
  7373. Runs the functions listed in `create-frame-hook' after frame creation.
  7374.  
  7375. Optional argument PROPS is a property list (a list of alternating
  7376. keyword-value specifications) of properties for the new frame.
  7377. (An alist is accepted for backward compatibility but should not
  7378. be passed in.)
  7379.  
  7380. See `set-frame-properties', `default-x-frame-plist', and
  7381. `default-tty-frame-plist' for the specially-recognized properties.
  7382.  
  7383. arguments: (&optional PROPS DEVICE)
  7384. Fframep
  7385. Return non-nil if OBJECT is a frame.
  7386. Also see `frame-live-p'.
  7387. Note that FSF Emacs kludgily returns a value indicating what type of
  7388. frame this is.  Use the cleaner function `frame-type' for that.
  7389.  
  7390. arguments: (OBJECT)
  7391. Fframe-live-p
  7392. Return non-nil if OBJECT is a frame which has not been deleted.
  7393.  
  7394. arguments: (OBJECT)
  7395. Fselect-frame
  7396. Select the frame FRAME.
  7397. Subsequent editing commands apply to its selected window.
  7398. The selection of FRAME lasts until the next time the user does
  7399. something to select a different frame, or until the next time this
  7400. function is called.
  7401.  
  7402. Note that this does not actually cause the window-system focus to
  7403. be set to this frame, or the select-frame-hook or deselect-frame-hook
  7404. to be run, until the next time that XEmacs is waiting for an event.
  7405.  
  7406. arguments: (FRAME)
  7407. Fselected-frame
  7408. Return the frame that is now selected on device DEVICE.
  7409. If DEVICE is not specified, the selected device will be used.
  7410. If no frames exist on the device, nil is returned.
  7411.  
  7412. arguments: (&optional DEVICE)
  7413. Factive-minibuffer-window
  7414. Return the currently active minibuffer window, or nil if none.
  7415.  
  7416. arguments: ()
  7417. Flast-nonminibuf-frame
  7418. Return the most-recently-selected non-minibuffer-only frame on CONSOLE.
  7419. This will always be the same as (selected-frame device) unless the
  7420. selected frame is a minibuffer-only frame.
  7421. CONSOLE defaults to the selected console if omitted.
  7422.  
  7423. arguments: (&optional CONSOLE)
  7424. Fframe-root-window
  7425. Return the root-window of FRAME.
  7426. If omitted, FRAME defaults to the currently selected frame.
  7427.  
  7428. arguments: (&optional FRAME)
  7429. Fframe-selected-window
  7430. Return the selected window of frame object FRAME.
  7431. If omitted, FRAME defaults to the currently selected frame.
  7432.  
  7433. arguments: (&optional FRAME)
  7434. Fset-frame-selected-window
  7435. Set the selected window of frame object FRAME to WINDOW.
  7436. If FRAME is nil, the selected frame is used.
  7437. If FRAME is the selected frame, this makes WINDOW the selected window.
  7438.  
  7439. arguments: (FRAME WINDOW)
  7440. Fframe-device
  7441. Return the device that FRAME is on.
  7442. If omitted, FRAME defaults to the currently selected frame.
  7443.  
  7444. arguments: (&optional FRAME)
  7445. Fnext-frame
  7446. Return the next frame of the right type in the frame list after FRAME.
  7447. FRAMETYPE controls which frames are eligible to be returned; all
  7448. others will be skipped.  Note that if there is only one eligible
  7449. frame, then `next-frame' called repeatedly will always return
  7450. the same frame, and if there is no eligible frame, then FRAME is
  7451. returned.
  7452.  
  7453. Possible values for FRAMETYPE are
  7454.  
  7455. 'visible         Consider only frames that are visible.
  7456. 'iconic             Consider only frames that are iconic.
  7457. 'invisible         Consider only frames that are invisible
  7458.              (this is different from iconic).
  7459. 'visible-iconic         Consider frames that are visible or iconic.
  7460. 'invisible-iconic     Consider frames that are invisible or iconic.
  7461. 'nomini             Consider all frames except minibuffer-only ones.
  7462. 'visible-nomini         Like `visible' but omits minibuffer-only frames.
  7463. 'iconic-nomini         Like `iconic' but omits minibuffer-only frames.
  7464. 'invisible-nomini     Like `invisible' but omits minibuffer-only frames.
  7465. 'visible-iconic-nomini     Like `visible-iconic' but omits minibuffer-only
  7466.              frames.
  7467. 'invisible-iconic-nomini Like `invisible-iconic' but omits minibuffer-only
  7468.              frames.
  7469. any other value         Consider all frames.
  7470.  
  7471. If FRAMETYPE is omitted, 'nomini is used.  A FRAMETYPE of 0 (a number)
  7472. is treated like 'iconic, for backwards compatibility.
  7473.  
  7474. If FRAMETYPE is a window, include only its own frame and any frame now
  7475. using that window as the minibuffer.
  7476.  
  7477. Optional third argument CONSOLE controls which consoles or devices the
  7478. returned frame may be on.  If CONSOLE is a console, return frames only
  7479. on that console.  If CONSOLE is a device, return frames only on that
  7480. device.  If CONSOLE is a console type, return frames only on consoles
  7481. of that type.  If CONSOLE is 'window-system, return any frames on any
  7482. window-system consoles.  If CONSOLE is nil or omitted, return frames only
  7483. on the FRAME's console.  Otherwise, all frames are considered.
  7484.  
  7485. arguments: (&optional FRAME FRAMETYPE CONSOLE)
  7486. Fprevious-frame
  7487. Return the next frame of the right type in the frame list after FRAME.
  7488. FRAMETYPE controls which frames are eligible to be returned; all
  7489. others will be skipped.  Note that if there is only one eligible
  7490. frame, then `previous-frame' called repeatedly will always return
  7491. the same frame, and if there is no eligible frame, then FRAME is
  7492. returned.
  7493.  
  7494. See `next-frame' for an explanation of the FRAMETYPE and CONSOLE
  7495. arguments.
  7496.  
  7497. arguments: (&optional FRAME FRAMETYPE CONSOLE)
  7498. Fdelete-frame
  7499. Delete FRAME, permanently eliminating it from use.
  7500. If omitted, FRAME defaults to the selected frame.
  7501. A frame may not be deleted if its minibuffer is used by other frames.
  7502. Normally, you cannot delete the last non-minibuffer-only frame (you must
  7503. use `save-buffers-kill-emacs' or `kill-emacs').  However, if optional
  7504. second argument FORCE is non-nil, you can delete the last frame. (This
  7505. will automatically call `save-buffers-kill-emacs'.)
  7506.  
  7507. arguments: (&optional FRAME FORCE)
  7508. Fmouse-position
  7509. Return a list (WINDOW X . Y) giving the current mouse window and position.
  7510. The position is given in character cells, where (0, 0) is the
  7511. upper-left corner of the window.
  7512.  
  7513. DEVICE specifies the device on which to read the mouse position, and
  7514. defaults to the selected device.  If the device is a mouseless terminal
  7515. or Emacs hasn't been programmed to read its mouse position, it returns
  7516. the device's selected window for WINDOW and nil for X and Y.
  7517.  
  7518. arguments: (&optional DEVICE)
  7519. Fmouse-pixel-position
  7520. Return a list (WINDOW X . Y) giving the current mouse window and position.
  7521. The position is given in pixel units, where (0, 0) is the
  7522. upper-left corner.
  7523.  
  7524. DEVICE specifies the device on which to read the mouse position, and
  7525. defaults to the selected device.  If the device is a mouseless terminal
  7526. or Emacs hasn't been programmed to read its mouse position, it returns
  7527. the device's selected window for WINDOW and nil for X and Y.
  7528.  
  7529. arguments: (&optional DEVICE)
  7530. Fmouse-position-as-motion-event
  7531. Return the current mouse position as a motion event.
  7532. This allows you to call the standard event functions such as
  7533. `event-over-toolbar-p' to determine where the mouse is.
  7534.  
  7535. DEVICE specifies the device on which to read the mouse position, and
  7536. defaults to the selected device.  If the mouse position can't be determined
  7537. (e.g. DEVICE is a TTY device), nil is returned instead of an event.
  7538.  
  7539. arguments: (&optional DEVICE)
  7540. Fset-mouse-position
  7541. Move the mouse pointer to the center of character cell (X,Y) in WINDOW.
  7542. Note, this is a no-op for an X frame that is not visible.
  7543. If you have just created a frame, you must wait for it to become visible
  7544. before calling this function on it, like this.
  7545.   (while (not (frame-visible-p frame)) (sleep-for .5))
  7546. Note also: Warping the mouse is contrary to the ICCCM, so be very sure
  7547.  that the behavior won't end up being obnoxious!
  7548.  
  7549. arguments: (WINDOW X Y)
  7550. Fset-mouse-pixel-position
  7551. Move the mouse pointer to pixel position (X,Y) in WINDOW.
  7552. Note, this is a no-op for an X frame that is not visible.
  7553. If you have just created a frame, you must wait for it to become visible
  7554. before calling this function on it, like this.
  7555.   (while (not (frame-visible-p frame)) (sleep-for .5))
  7556.  
  7557. arguments: (WINDOW X Y)
  7558. Fmake-frame-visible
  7559. Make the frame FRAME visible (assuming it is an X-window).
  7560. If omitted, FRAME defaults to the currently selected frame.
  7561. Also raises the frame so that nothing obscures it.
  7562.  
  7563. arguments: (&optional FRAME)
  7564. Fmake-frame-invisible
  7565. Unconditionally removes frame from the display (assuming it is an X-window).
  7566. If omitted, FRAME defaults to the currently selected frame.
  7567. If what you want to do is iconify the frame (if the window manager uses
  7568. icons) then you should call `iconify-frame' instead.
  7569. Normally you may not make FRAME invisible if all other frames are invisible
  7570. and uniconified, but if the second optional argument FORCE is non-nil,
  7571. you may do so.
  7572.  
  7573. arguments: (&optional FRAME FORCE)
  7574. Ficonify-frame
  7575. Make the frame FRAME into an icon, if the window manager supports icons.
  7576. If omitted, FRAME defaults to the currently selected frame.
  7577.  
  7578. arguments: (&optional FRAME)
  7579. Fdeiconify-frame
  7580. Open (de-iconify) the iconified frame FRAME.
  7581. Under X, this is currently the same as `make-frame-visible'.
  7582. If omitted, FRAME defaults to the currently selected frame.
  7583. Also raises the frame so that nothing obscures it.
  7584.  
  7585. arguments: (&optional FRAME)
  7586. Fframe-visible-p
  7587. Return non NIL if FRAME is now "visible" (actually in use for display).
  7588. A frame that is not visible is not updated, and, if it works through a
  7589. window system, may not show at all.
  7590. N.B. Under X "visible" means Mapped. It the window is mapped but not
  7591. actually visible on screen then frame_visible returns 'hidden.
  7592.  
  7593. arguments: (&optional FRAME)
  7594. Fframe-totally-visible-p
  7595. Return T if frame is not obscured by any other X windows, NIL otherwise.
  7596. Always returns t for tty frames.
  7597.  
  7598. arguments: (&optional FRAME)
  7599. Fframe-iconified-p
  7600. Return t if FRAME is iconified.
  7601. Not all window managers use icons; some merely unmap the window, so this
  7602. function is not the inverse of `frame-visible-p'.  It is possible for a
  7603. frame to not be visible and not be iconified either.  However, if the
  7604. frame is iconified, it will not be visible.
  7605.  
  7606. arguments: (&optional FRAME)
  7607. Fvisible-frame-list
  7608. Return a list of all frames now "visible" (being updated).
  7609. If DEVICE is specified only frames on that device will be returned.
  7610. Note that under virtual window managers not all these frame are necessarily
  7611. really updated.
  7612.  
  7613. arguments: (&optional DEVICE)
  7614. Fraise-frame
  7615. Bring FRAME to the front, so it occludes any frames it overlaps.
  7616. If omitted, FRAME defaults to the currently selected frame.
  7617. If FRAME is invisible, make it visible.
  7618. If Emacs is displaying on an ordinary terminal or some other device which
  7619. doesn't support multiple overlapping frames, this function does nothing.
  7620.  
  7621. arguments: (&optional FRAME)
  7622. Flower-frame
  7623. Send FRAME to the back, so it is occluded by any frames that overlap it.
  7624. If omitted, FRAME defaults to the currently selected frame.
  7625. If Emacs is displaying on an ordinary terminal or some other device which
  7626. doesn't support multiple overlapping frames, this function does nothing.
  7627.  
  7628. arguments: (&optional FRAME)
  7629. Fset-frame-properties
  7630. Change some properties of a frame.
  7631. PLIST is a property list.
  7632. You can also change frame properties individually using `set-frame-property',
  7633. but it may be more efficient to change many properties at once.
  7634.  
  7635. Frame properties can be retrieved using `frame-property' or `frame-properties'.
  7636.  
  7637. The following symbols etc. have predefined meanings:
  7638.  
  7639.  name        Name of the frame, used with X resources.
  7640.         Unchangeable after creation.
  7641.  
  7642.  height        Height of the frame, in lines.
  7643.  
  7644.  width        Width of the frame, in characters.
  7645.  
  7646.  minibuffer    Gives the minibuffer behavior for this frame.  Either
  7647.         t (frame has its own minibuffer), `only' (frame is
  7648.         a minibuffer-only frame), or a window (frame uses that
  7649.         window, which is on another frame, as the minibuffer).
  7650.  
  7651.  unsplittable    If non-nil, frame cannot be split by `display-buffer'.
  7652.  
  7653.  current-display-table, menubar-visible-p, left-margin-width,
  7654.  right-margin-width, minimum-line-ascent, minimum-line-descent,
  7655.  use-left-overflow, use-right-overflow, scrollbar-width, scrollbar-height,
  7656.  default-toolbar, top-toolbar, bottom-toolbar, left-toolbar, right-toolbar,
  7657.  default-toolbar-height, default-toolbar-width, top-toolbar-height,
  7658.  bottom-toolbar-height, left-toolbar-width, right-toolbar-width,
  7659.  default-toolbar-visible-p, top-toolbar-visible-p, bottom-toolbar-visible-p,
  7660.  left-toolbar-visible-p, right-toolbar-visible-p, toolbar-buttons-captioned-p,
  7661.  modeline-shadow-thickness, has-modeline-p
  7662.         [Giving the name of any built-in specifier variable is
  7663.         equivalent to calling `set-specifier' on the specifier,
  7664.         with a locale of FRAME.  Giving the name to `frame-property'
  7665.         calls `specifier-instance' on the specifier.]
  7666.  
  7667.  text-pointer-glyph, nontext-pointer-glyph, modeline-pointer-glyph,
  7668.  selection-pointer-glyph, busy-pointer-glyph, toolbar-pointer-glyph,
  7669.  menubar-pointer-glyph, scrollbar-pointer-glyph, gc-pointer-glyph,
  7670.  octal-escape-glyph, control-arrow-glyph, invisible-text-glyph,
  7671.  hscroll-glyph, truncation-glyph, continuation-glyph
  7672.         [Giving the name of any glyph variable is equivalent to
  7673.         calling `set-glyph-image' on the glyph, with a locale
  7674.         of FRAME.  Giving the name to `frame-property' calls
  7675.         `glyph-image-instance' on the glyph.]
  7676.  
  7677.  [default foreground], [default background], [default font],
  7678.  [modeline foreground], [modeline background], [modeline font],
  7679.  etc.
  7680.         [Giving a vector of a face and a property is equivalent
  7681.         to calling `set-face-property' on the face and property,
  7682.         with a locale of FRAME.  Giving the vector to
  7683.         `frame-property' calls `face-property-instance' on the
  7684.         face and property.]
  7685.  
  7686. Finally, if a frame property symbol has the property `frame-property-alias'
  7687. on it, then the value will be used in place of that symbol when looking
  7688. up and setting frame property values.  This allows you to alias one
  7689. frame property name to another.
  7690.  
  7691. See the variables `default-x-frame-plist' and `default-tty-frame-plist'
  7692. for a description of the properties recognized for particular types of
  7693. frames.
  7694.  
  7695. arguments: (FRAME PLIST)
  7696. Fframe-property
  7697. Return FRAME's value for property PROPERTY.
  7698. See `set-frame-properties' for the built-in property names.
  7699.  
  7700. arguments: (FRAME PROPERTY &optional DEFAULT)
  7701. Fframe-properties
  7702. Return a property list of the properties of FRAME.
  7703. Do not modify this list; use `set-frame-property' instead.
  7704.  
  7705. arguments: (&optional FRAME)
  7706. Fframe-pixel-height
  7707. Return the height in pixels of FRAME.
  7708.  
  7709. arguments: (&optional FRAME)
  7710. Fframe-pixel-width
  7711. Return the width in pixels of FRAME.
  7712.  
  7713. arguments: (&optional FRAME)
  7714. Fframe-name
  7715. Return the name of FRAME (defaulting to the selected frame).
  7716. This is not the same as the `title' of the frame.
  7717.  
  7718. arguments: (&optional FRAME)
  7719. Fframe-modified-tick
  7720. Return FRAME's tick counter, incremented for each change to the frame.
  7721. Each frame has a tick counter which is incremented each time the frame
  7722. is resized, a window is resized, added, or deleted, a face is changed,
  7723. `set-window-buffer' or `select-window' is called on a window in the
  7724. frame, the window-start of a window in the frame has changed, or
  7725. anything else interesting has happened.  It wraps around occasionally.
  7726. No argument or nil as argument means use selected frame as FRAME.
  7727.  
  7728. arguments: (&optional FRAME)
  7729. Fset-frame-height
  7730. Specify that the frame FRAME has LINES lines.
  7731. Optional third arg non-nil means that redisplay should use LINES lines
  7732. but that the idea of the actual height of the frame should not be changed.
  7733.  
  7734. arguments: (FRAME ROWS &optional PRETEND)
  7735. Fset-frame-width
  7736. Specify that the frame FRAME has COLS columns.
  7737. Optional third arg non-nil means that redisplay should use COLS columns
  7738. but that the idea of the actual width of the frame should not be changed.
  7739.  
  7740. arguments: (FRAME COLS &optional PRETEND)
  7741. Fset-frame-size
  7742. Sets size of FRAME to COLS by ROWS.
  7743. Optional fourth arg non-nil means that redisplay should use COLS by ROWS
  7744. but that the idea of the actual size of the frame should not be changed.
  7745.  
  7746. arguments: (FRAME COLS ROWS &optional PRETEND)
  7747. Fset-frame-position
  7748. Sets position of FRAME in pixels to XOFFSET by YOFFSET.
  7749. This is actually the position of the upper left corner of the frame.
  7750. Negative values for XOFFSET or YOFFSET are interpreted relative to
  7751. the rightmost or bottommost possible position (that stays within the screen).
  7752.  
  7753. arguments: (FRAME XOFFSET YOFFSET)
  7754. Fset-frame-pointer
  7755. Set the mouse pointer of FRAME to the given pointer image instance.
  7756. You should not call this function directly.  Instead, set one of
  7757. the variables `text-pointer-glyph', `nontext-pointer-glyph',
  7758. `modeline-pointer-glyph', `selection-pointer-glyph',
  7759. `busy-pointer-glyph', or `toolbar-pointer-glyph'.
  7760.  
  7761. arguments: (FRAME IMAGE-INSTANCE)
  7762. Vselect-frame-hook
  7763. Function or functions to run just after a new frame is given the focus.
  7764. Note that calling `select-frame' does not necessarily set the focus:
  7765. The actual window-system focus will not be changed until the next time
  7766. that XEmacs is waiting for an event, and even then, the window manager
  7767. may refuse the focus-change request.Vdeselect-frame-hook
  7768. Function or functions to run just before a frame loses the focus.
  7769. See `select-frame-hook'.Vdelete-frame-hook
  7770. Function or functions to call when a frame is deleted.
  7771. One argument, the about-to-be-deleted frame.Vcreate-frame-hook
  7772. Function or functions to call when a frame is created.
  7773. One argument, the newly-created frame.Vmouse-enter-frame-hook
  7774. Function or functions to call when the mouse enters a frame.
  7775. One argument, the frame.
  7776. Be careful not to make assumptions about the window manager's focus model.
  7777. In most cases, the `deselect-frame-hook' is more appropriate.Vmouse-leave-frame-hook
  7778. Function or functions to call when the mouse leaves a frame.
  7779. One argument, the frame.
  7780. Be careful not to make assumptions about the window manager's focus model.
  7781. In most cases, the `select-frame-hook' is more appropriate.Vmap-frame-hook
  7782. Function or functions to call when a frame is mapped.
  7783. One argument, the frame.Vunmap-frame-hook
  7784. Function or functions to call when a frame is unmapped.
  7785. One argument, the frame.Vallow-deletion-of-last-visible-frame
  7786. *Non-nil means to assume the force option to delete-frame.Vdrag-and-drop-functions
  7787. Function or functions to run when an object is dropped on a frame.
  7788. Each function is called with either two or three args.  If called with
  7789. two args, the args are a frame and a pathname.  If with three, the
  7790. args are a frame, a pathname (which will be either a string or nil)
  7791. and the textual representation of the dragged object.Vmouse-motion-handler
  7792. Handler for motion events.  One arg, the event.
  7793. For most applications, you should use `mode-motion-hook' instead of this.Vsynchronize-minibuffers
  7794. Set to t if all minibuffer windows are to be synchronized.
  7795. This will cause echo area messages to appear in the minibuffers of all
  7796. visible frames.Vframe-title-format
  7797. Controls the title of the X window corresponding to the selected frame.
  7798. This is the same format as `modeline-format' with the exception that
  7799. %- is ignored.Vframe-icon-title-format
  7800. Controls the title of the icon corresponding to the selected frame.
  7801. See also the variable `frame-title-format'.Vdefault-frame-name
  7802. The default name to assign to newly-created frames.
  7803. This can be overridden by arguments to `make-frame'.
  7804. This must be a string.Vdefault-frame-plist
  7805. Plist of default values for frame creation, other than the first one.
  7806. These may be set in your init file, like this:
  7807.  
  7808.   (setq default-frame-plist '(width 80 height 55))
  7809.  
  7810. The properties may be in alist format for backward compatibility
  7811. but you should not rely on this behavior.
  7812.  
  7813. These override values given in window system configuration data,
  7814.  including X Windows' defaults database.
  7815.  
  7816. Since the first X frame is created before loading your .emacs file,
  7817. you must use the X resource database for that.
  7818.  
  7819. For values specific to the first Emacs frame, see `initial-frame-plist'.
  7820. For values specific to the separate minibuffer frame, see
  7821.  `minibuffer-frame-plist'.
  7822.  
  7823. See also the variables `default-x-frame-plist' and
  7824. `default-tty-frame-plist', which are like `default-frame-plist'
  7825. except that they apply only to X or tty frames, respectively
  7826. (whereas `default-frame-plist' applies to all types of frames).Vframe-icon-glyph
  7827. Icon glyph used to iconify a frame.Fvalid-image-instantiator-format-p
  7828. Given an IMAGE-INSTANTIATOR-FORMAT, return non-nil if it is valid.
  7829. Valid formats are some subset of 'nothing, 'string, 'formatted-string,
  7830. 'xpm, 'xbm, 'xface, 'gif, 'jpeg, 'png, 'tiff, 'cursor-font, 'font,
  7831. 'autodetect, and 'subwindow, depending on how XEmacs was
  7832. compiled.
  7833.  
  7834. arguments: (IMAGE-INSTANTIATOR-FORMAT)
  7835. Fimage-instantiator-format-list
  7836. Return a list of valid image-instantiator formats.
  7837.  
  7838. arguments: ()
  7839. Fset-console-type-image-conversion-list
  7840. Set the image-conversion-list for consoles of the given TYPE.
  7841. The image-conversion-list specifies how image instantiators that
  7842. are strings should be interpreted.  Each element of the list should be
  7843. a list of two elements (a regular expression string and a vector) or
  7844. a list of three elements (the preceding two plus an integer index into
  7845. the vector).  The string is converted to the vector associated with the
  7846. first matching regular expression.  If a vector index is specified, the
  7847. string itself is substituted into that position in the vector.
  7848.  
  7849. Note: The conversion above is applied when the image instantiator is
  7850. added to an image specifier, not when the specifier is actually
  7851. instantiated.  Therefore, changing the image-conversion-list only affects
  7852. newly-added instantiators.  Existing instantiators in glyphs and image
  7853. specifiers will not be affected.
  7854.  
  7855. arguments: (CONSOLE-TYPE LIST)
  7856. Fconsole-type-image-conversion-list
  7857. Return the image-conversion-list for devices of the given TYPE.
  7858. The image-conversion-list specifies how to interpret image string
  7859. instantiators for the specified console type.  See
  7860. `set-console-type-image-conversion-list' for a description of its syntax.
  7861.  
  7862. arguments: (CONSOLE-TYPE)
  7863. Fvalid-image-instance-type-p
  7864. Given an IMAGE-INSTANCE-TYPE, return non-nil if it is valid.
  7865. Valid types are some subset of 'nothing, 'text, 'mono-pixmap, 'color-pixmap,
  7866. 'pointer, and 'subwindow, depending on how XEmacs was compiled.
  7867.  
  7868. arguments: (IMAGE-INSTANCE-TYPE)
  7869. Fimage-instance-type-list
  7870. Return a list of valid image-instance types.
  7871.  
  7872. arguments: ()
  7873. Fmake-image-instance
  7874. Create a new `image-instance' object.
  7875.  
  7876. Image-instance objects encapsulate the way a particular image (pixmap,
  7877. etc.) is displayed on a particular device.  In most circumstances, you
  7878. do not need to directly create image instances; use a glyph instead.
  7879. However, it may occasionally be useful to explicitly create image
  7880. instances, if you want more control over the instantiation process.
  7881.  
  7882. DATA is an image instantiator, which describes the image; see
  7883. `image-specifier-p' for a description of the allowed values.
  7884.  
  7885. DEST-TYPES should be a list of allowed image instance types that can
  7886. be generated.  The recognized image instance types are
  7887.  
  7888. 'nothing
  7889.   Nothing is displayed.
  7890. 'text
  7891.   Displayed as text.  The foreground and background colors and the
  7892.   font of the text are specified independent of the pixmap.  Typically
  7893.   these attributes will come from the face of the surrounding text,
  7894.   unless a face is specified for the glyph in which the image appears.
  7895. 'mono-pixmap
  7896.   Displayed as a mono pixmap (a pixmap with only two colors where the
  7897.   foreground and background can be specified independent of the pixmap;
  7898.   typically the pixmap assumes the foreground and background colors of
  7899.   the text around it, unless a face is specified for the glyph in which
  7900.   the image appears).
  7901. 'color-pixmap
  7902.   Displayed as a color pixmap.
  7903. 'pointer
  7904.   Used as the mouse pointer for a window.
  7905. 'subwindow
  7906.   A child window that is treated as an image.  This allows (e.g.)
  7907.   another program to be responsible for drawing into the window.
  7908.   Not currently implemented.
  7909.  
  7910. The DEST-TYPES list is unordered.  If multiple destination types
  7911. are possible for a given instantiator, the "most natural" type
  7912. for the instantiator's format is chosen. (For XBM, the most natural
  7913. types are `mono-pixmap', followed by `color-pixmap', followed by
  7914. `pointer'.  For the other normal image formats, the most natural
  7915. types are `color-pixmap', followed by `mono-pixmap', followed by
  7916. `pointer'.  For the string and formatted-string formats, the most
  7917. natural types are `text', followed by `mono-pixmap' (not currently
  7918. implemented), followed by `color-pixmap' (not currently implemented).
  7919. The other formats can only be instantiated as one type. (If you
  7920. want to control more specifically the order of the types into which
  7921. an image is instantiated, just call `make-image-instance' repeatedly
  7922. until it succeeds, passing less and less preferred destination types
  7923. each time.
  7924.  
  7925. If DEST-TYPES is omitted, all possible types are allowed.
  7926.  
  7927. NO-ERROR controls what happens when the image cannot be generated.
  7928. If nil, an error message is generated.  If t, no messages are
  7929. generated and this function returns nil.  If anything else, a warning
  7930. message is generated and this function returns nil.
  7931.  
  7932. arguments: (DATA &optional DEVICE DEST-TYPES NO-ERROR)
  7933. Fimage-instance-p
  7934. Return non-nil if OBJECT is an image instance.
  7935.  
  7936. arguments: (OBJECT)
  7937. Fimage-instance-type
  7938. Return the type of the given image instance.
  7939. The return value will be one of 'nothing, 'text, 'mono-pixmap,
  7940. 'color-pixmap, 'pointer, or 'subwindow.
  7941.  
  7942. arguments: (IMAGE-INSTANCE)
  7943. Fimage-instance-name
  7944. Return the name of the given image instance.
  7945.  
  7946. arguments: (IMAGE-INSTANCE)
  7947. Fimage-instance-string
  7948. Return the string of the given image instance.
  7949. This will only be non-nil for text image instances.
  7950.  
  7951. arguments: (IMAGE-INSTANCE)
  7952. Fimage-instance-file-name
  7953. Return the file name from which IMAGE-INSTANCE was read, if known.
  7954.  
  7955. arguments: (IMAGE-INSTANCE)
  7956. Fimage-instance-mask-file-name
  7957. Return the file name from which IMAGE-INSTANCE's mask was read, if known.
  7958.  
  7959. arguments: (IMAGE-INSTANCE)
  7960. Fimage-instance-depth
  7961. Return the depth of the image instance.
  7962. This is 0 for a bitmap, or a positive integer for a pixmap.
  7963.  
  7964. arguments: (IMAGE-INSTANCE)
  7965. Fimage-instance-height
  7966. Return the height of the image instance, in pixels.
  7967.  
  7968. arguments: (IMAGE-INSTANCE)
  7969. Fimage-instance-width
  7970. Return the width of the image instance, in pixels.
  7971.  
  7972. arguments: (IMAGE-INSTANCE)
  7973. Fimage-instance-hotspot-x
  7974. Return the X coordinate of the image instance's hotspot, if known.
  7975. This is a point relative to the origin of the pixmap.  When an image is
  7976.  used as a mouse pointer, the hotspot is the point on the image that sits
  7977.  over the location that the pointer points to.  This is, for example, the
  7978.  tip of the arrow or the center of the crosshairs.
  7979. This will always be nil for a non-pointer image instance.
  7980.  
  7981. arguments: (IMAGE-INSTANCE)
  7982. Fimage-instance-hotspot-y
  7983. Return the Y coordinate of the image instance's hotspot, if known.
  7984. This is a point relative to the origin of the pixmap.  When an image is
  7985.  used as a mouse pointer, the hotspot is the point on the image that sits
  7986.  over the location that the pointer points to.  This is, for example, the
  7987.  tip of the arrow or the center of the crosshairs.
  7988. This will always be nil for a non-pointer image instance.
  7989.  
  7990. arguments: (IMAGE-INSTANCE)
  7991. Fimage-instance-foreground
  7992. Return the foreground color of IMAGE-INSTANCE, if applicable.
  7993. This will be a color instance or nil. (It will only be non-nil for
  7994. colorized mono pixmaps and for pointers.)
  7995.  
  7996. arguments: (IMAGE-INSTANCE)
  7997. Fimage-instance-background
  7998. Return the background color of IMAGE-INSTANCE, if applicable.
  7999. This will be a color instance or nil. (It will only be non-nil for
  8000. colorized mono pixmaps and for pointers.)
  8001.  
  8002. arguments: (IMAGE-INSTANCE)
  8003. Fcolorize-image-instance
  8004. Make the image instance be displayed in the given colors.
  8005. This function returns a new image instance that is exactly like the
  8006. specified one except that (if possible) the foreground and background
  8007. colors and as specified.  Currently, this only does anything if the image
  8008. instance is a mono pixmap; otherwise, the same image instance is returned.
  8009.  
  8010. arguments: (IMAGE-INSTANCE FOREGROUND BACKGROUND)
  8011. Fimage-specifier-p
  8012. Return non-nil if OBJECT is an image specifier.
  8013.  
  8014. An image specifier is used for images (pixmaps and the like).  It is used
  8015. to describe the actual image in a glyph.  It is instanced as an image-
  8016. instance.
  8017.  
  8018. Image instantiators come in many formats: `xbm', `xpm', `gif', `jpeg',
  8019. etc.  This describes the format of the data describing the image.  The
  8020. resulting image instances also come in many types -- `mono-pixmap',
  8021. `color-pixmap', `text', `pointer', etc.  This refers to the behavior of
  8022. the image and the sorts of places it can appear. (For example, a
  8023. color-pixmap image has fixed colors specified for it, while a
  8024. mono-pixmap image comes in two unspecified shades "foreground" and
  8025. "background" that are determined from the face of the glyph or
  8026. surrounding text; a text image appears as a string of text and has an
  8027. unspecified foreground, background, and font; a pointer image behaves
  8028. like a mono-pixmap image but can only be used as a mouse pointer
  8029. [mono-pixmap images cannot be used as mouse pointers]; etc.) It is
  8030. important to keep the distinction between image instantiator format and
  8031. image instance type in mind.  Typically, a given image instantiator
  8032. format can result in many different image instance types (for example,
  8033. `xpm' can be instanced as `color-pixmap', `mono-pixmap', or `pointer';
  8034. whereas `cursor-font' can be instanced only as `pointer'), and a
  8035. particular image instance type can be generated by many different
  8036. image instantiator formats (e.g.  `color-pixmap' can be generated by `xpm',
  8037. `gif', `jpeg', etc.).
  8038.  
  8039. See `make-image-instance' for a more detailed discussion of image
  8040. instance types.
  8041.  
  8042. An image instantiator should be a string or a vector of the form
  8043.  
  8044.  [FORMAT :KEYWORD VALUE ...]
  8045.  
  8046. i.e. a format symbol followed by zero or more alternating keyword-value
  8047. pairs.  FORMAT should be one of
  8048.  
  8049. 'nothing
  8050.   (Don't display anything; no keywords are valid for this.
  8051.    Can only be instanced as `nothing'.)
  8052. 'string
  8053.   (Display this image as a text string.  Can only be instanced
  8054.    as `text', although support for instancing as `mono-pixmap'
  8055.    should be added.)
  8056. 'formatted-string
  8057.   (Display this image as a text string, with replaceable fields;
  8058.   not currently implemented.)
  8059. 'xbm
  8060.   (An X bitmap; only if X support was compiled into this XEmacs.
  8061.    Can be instanced as `mono-pixmap', `color-pixmap', or `pointer'.)
  8062. 'xpm
  8063.   (An XPM pixmap; only if XPM support was compiled into this XEmacs.
  8064.    Can be instanced as `color-pixmap', `mono-pixmap', or `pointer'.)
  8065. 'xface
  8066.   (An X-Face bitmap, used to encode people's faces in e-mail messages;
  8067.   only if X-Face support was compiled into this XEmacs.  Can be
  8068.   instanced as `mono-pixmap', `color-pixmap', or `pointer'.)
  8069. 'gif
  8070.   (A GIF87 or GIF89 image; only if GIF support was compiled into this
  8071.    XEmacs.  Can be instanced as `color-pixmap'.)
  8072. 'jpeg
  8073.   (A JPEG image; only if JPEG support was compiled into this XEmacs.
  8074.    Can be instanced as `color-pixmap'.)
  8075. 'png
  8076.   (A PNG/GIF24 image; only if PNG support was compiled into this XEmacs.
  8077.    Can be instanced as `color-pixmap'.)
  8078. 'tiff
  8079.   (A TIFF image; not currently implemented.)
  8080. 'cursor-font
  8081.   (One of the standard cursor-font names, such as "watch" or
  8082.    "right_ptr" under X.  Under X, this is, more specifically, any
  8083.    of the standard cursor names from appendix B of the Xlib manual
  8084.    [also known as the file <X11/cursorfont.h>] minus the XC_ prefix.
  8085.    On other window systems, the valid names will be specific to the
  8086.    type of window system.  Can only be instanced as `pointer'.)
  8087. 'font
  8088.   (A glyph from a font; i.e. the name of a font, and glyph index into it
  8089.    of the form "FONT fontname index [[mask-font] mask-index]".
  8090.    Currently can only be instanced as `pointer', although this should
  8091.    probably be fixed.)
  8092. 'subwindow
  8093.   (An embedded X window; not currently implemented.)
  8094. 'autodetect
  8095.   (XEmacs tries to guess what format the data is in.  If X support
  8096.   exists, the data string will be checked to see if it names a filename.
  8097.   If so, and this filename contains XBM or XPM data, the appropriate
  8098.   sort of pixmap or pointer will be created. [This includes picking up
  8099.   any specified hotspot or associated mask file.] Otherwise, if `pointer'
  8100.   is one of the allowable image-instance types and the string names a
  8101.   valid cursor-font name, the image will be created as a pointer.
  8102.   Otherwise, the image will be displayed as text.  If no X support
  8103.   exists, the image will always be displayed as text.)
  8104. 'inherit
  8105.   Inherit from the background-pixmap property of a face.
  8106.  
  8107. The valid keywords are:
  8108.  
  8109. :data
  8110.   (Inline data.  For most formats above, this should be a string.  For
  8111.   XBM images, this should be a list of three elements: width, height, and
  8112.   a string of bit data.  This keyword is not valid for instantiator
  8113.   formats `nothing' and `inherit'.)
  8114. :file
  8115.   (Data is contained in a file.  The value is the name of this file.
  8116.   If both :data and :file are specified, the image is created from
  8117.   what is specified in :data and the string in :file becomes the
  8118.   value of the `image-instance-file-name' function when applied to
  8119.   the resulting image-instance.  This keyword is not valid for
  8120.   instantiator formats `nothing', `string', `formatted-string',
  8121.   `cursor-font', `font', `autodetect', and `inherit'.)
  8122. :foreground
  8123. :background
  8124.   (For `xbm', `xface', `cursor-font', and `font'.  These keywords
  8125.   allow you to explicitly specify foreground and background colors.
  8126.   The argument should be anything acceptable to `make-color-instance'.
  8127.   This will cause what would be a `mono-pixmap' to instead be colorized
  8128.   as a two-color color-pixmap, and specifies the foreground and/or
  8129.   background colors for a pointer instead of black and white.)
  8130. :mask-data
  8131.   (For `xbm' and `xface'.  This specifies a mask to be used with the
  8132.   bitmap.  The format is a list of width, height, and bits, like for
  8133.   :data.)
  8134. :mask-file
  8135.   (For `xbm' and `xface'.  This specifies a file containing the mask data.
  8136.   If neither a mask file nor inline mask data is given for an XBM image,
  8137.   and the XBM image comes from a file, XEmacs will look for a mask file
  8138.   with the same name as the image file but with "Mask" or "msk"
  8139.   appended.  For example, if you specify the XBM file "left_ptr"
  8140.   [usually located in "/usr/include/X11/bitmaps"], the associated
  8141.   mask file "left_ptrmsk" will automatically be picked up.)
  8142. :hotspot-x
  8143. :hotspot-y
  8144.   (For `xbm' and `xface'.  These keywords specify a hotspot if the image
  8145.   is instantiated as a `pointer'.  Note that if the XBM image file
  8146.   specifies a hotspot, it will automatically be picked up if no
  8147.   explicit hotspot is given.)
  8148. :color-symbols
  8149.   (Only for `xpm'.  This specifies an alist that maps strings
  8150.   that specify symbolic color names to the actual color to be used
  8151.   for that symbolic color (in the form of a string or a color-specifier
  8152.   object).  If this is not specified, the contents of `xpm-color-symbols'
  8153.   are used to generate the alist.)
  8154. :face
  8155.   (Only for `inherit'.  This specifies the face to inherit from.)
  8156.  
  8157. If instead of a vector, the instantiator is a string, it will be
  8158. converted into a vector by looking it up according to the specs in the
  8159. `console-type-image-conversion-list' (q.v.) for the console type of
  8160. the domain (usually a window; sometimes a frame or device) over which
  8161. the image is being instantiated.
  8162.  
  8163. If the instantiator specifies data from a file, the data will be read
  8164. in at the time that the instantiator is added to the image (which may
  8165. be well before when the image is actually displayed), and the
  8166. instantiator will be converted into one of the inline-data forms, with
  8167. the filename retained using a :file keyword.  This implies that the
  8168. file must exist when the instantiator is added to the image, but does
  8169. not need to exist at any other time (e.g. it may safely be a temporary
  8170. file).
  8171.  
  8172. arguments: (OBJECT)
  8173. Fvalid-glyph-type-p
  8174. Given a GLYPH-TYPE, return non-nil if it is valid.
  8175. Valid types are `buffer', `pointer', and `icon'.
  8176.  
  8177. arguments: (GLYPH-TYPE)
  8178. Fglyph-type-list
  8179. Return a list of valid glyph types.
  8180.  
  8181. arguments: ()
  8182. Fmake-glyph-internal
  8183. Create a new, uninitialized glyph.
  8184.  
  8185. TYPE specifies the type of the glyph; this should be one of `buffer',
  8186. `pointer', or `icon', and defaults to `buffer'.  The type of the glyph
  8187. specifies in which contexts the glyph can be used, and controls the
  8188. allowable image types into which the glyph's image can be
  8189. instantiated.
  8190.  
  8191. `buffer' glyphs can be used as the begin-glyph or end-glyph of an
  8192. extent, in the modeline, and in the toolbar.  Their image can be
  8193. instantiated as `nothing', `mono-pixmap', `color-pixmap', `text',
  8194. and `subwindow'.
  8195.  
  8196. `pointer' glyphs can be used to specify the mouse pointer.  Their
  8197. image can be instantiated as `pointer'.
  8198.  
  8199. `icon' glyphs can be used to specify the icon used when a frame is
  8200. iconified.  Their image can be instantiated as `mono-pixmap' and
  8201. `color-pixmap'.
  8202.  
  8203. arguments: (&optional TYPE)
  8204. Fglyphp
  8205. Return non-nil if OBJECT is a glyph.
  8206.  
  8207. A glyph is an object used for pixmaps and the like.  It is used
  8208. in begin-glyphs and end-glyphs attached to extents, in marginal and textual
  8209. annotations, in overlay arrows (overlay-arrow-* variables), in toolbar
  8210. buttons, and the like.  Its image is described using an image specifier --
  8211. see `image-specifier-p'.
  8212.  
  8213. arguments: (OBJECT)
  8214. Fglyph-type
  8215. Return the type of the given glyph.
  8216. The return value will be one of 'buffer, 'pointer, or 'icon.
  8217.  
  8218. arguments: (GLYPH)
  8219. Fglyph-width
  8220. Return the width of GLYPH on WINDOW.
  8221. This may not be exact as it does not take into account all of the context
  8222. that redisplay will.
  8223.  
  8224. arguments: (GLYPH &optional WINDOW)
  8225. Fglyph-ascent
  8226. Return the ascent value of GLYPH on WINDOW.
  8227. This may not be exact as it does not take into account all of the context
  8228. that redisplay will.
  8229.  
  8230. arguments: (GLYPH &optional WINDOW)
  8231. Fglyph-descent
  8232. Return the descent value of GLYPH on WINDOW.
  8233. This may not be exact as it does not take into account all of the context
  8234. that redisplay will.
  8235.  
  8236. arguments: (GLYPH &optional WINDOW)
  8237. Fglyph-height
  8238. Return the height of GLYPH on WINDOW.
  8239. This may not be exact as it does not take into account all of the context
  8240. that redisplay will.
  8241.  
  8242. arguments: (GLYPH &optional WINDOW)
  8243. Voctal-escape-glyph
  8244. What to prefix character codes displayed in octal with.Vcontrol-arrow-glyph
  8245. What to use as an arrow for control characters.Vinvisible-text-glyph
  8246. What to use to indicate the presence of invisible text.
  8247. This is the glyph that is displayed when an ellipsis is called for
  8248. (see `selective-display-ellipses' and `buffer-invisibility-spec').
  8249. Normally this is three dots ("...").Vhscroll-glyph
  8250. What to display at the beginning of horizontally scrolled lines.Vcurrent-display-table
  8251. *The display table currently in use.
  8252. This is a specifier; use `set-specifier' to change it.
  8253. The display table is a vector created with `make-display-table'.
  8254. The 256 elements control how to display each possible text character.
  8255. Each value should be a string, a glyph, a vector or nil.
  8256. If a value is a vector it must be composed only of strings and glyphs.
  8257. nil means display the character in the default fashion.
  8258. Faces can have their own, overriding display table.Vtruncation-glyph
  8259. What to display at the end of truncated lines.Vcontinuation-glyph
  8260. What to display at the end of wrapped lines.Vxemacs-logo
  8261. The glyph used to display the XEmacs logo at startup.Fcurrent-column
  8262. Return the horizontal position of point.  Beginning of line is column 0.
  8263. This is calculated by adding together the widths of all the displayed
  8264.  representations of the character between the start of the previous line
  8265.  and point. (e.g. control characters will have a width of 2 or 4, tabs
  8266.  will have a variable width.)
  8267. Ignores finite width of frame, which means that this function may return
  8268.  values greater than (frame-width).
  8269. Whether the line is visible (if `selective-display' is t) has no effect;
  8270.  however, ^M is treated as end of line when `selective-display' is t.
  8271. If BUFFER is nil, the current buffer is assumed.
  8272.  
  8273. arguments: (&optional BUFFER)
  8274. Findent-to
  8275. Indent from point with tabs and spaces until COLUMN is reached.
  8276. Optional second argument MIN says always do at least MIN spaces
  8277.  even if that goes past COLUMN; by default, MIN is zero.
  8278. If BUFFER is nil, the current buffer is assumed.
  8279.  
  8280. arguments: (COL &optional MINIMUM BUFFER)
  8281. Fcurrent-indentation
  8282. Return the indentation of the current line.
  8283. This is the horizontal position of the character
  8284. following any initial whitespace.
  8285.  
  8286. arguments: (&optional BUFFER)
  8287. Fmove-to-column
  8288. Move point to column COLUMN in the current line.
  8289. The column of a character is calculated by adding together the widths
  8290. as displayed of the previous characters in the line.
  8291. This function ignores line-continuation;
  8292. there is no upper limit on the column number a character can have
  8293. and horizontal scrolling has no effect.
  8294.  
  8295. If specified column is within a character, point goes after that character.
  8296. If it's past end of line, point goes to end of line.
  8297.  
  8298. A non-nil second (optional) argument FORCE means, if the line
  8299. is too short to reach column COLUMN then add spaces/tabs to get there,
  8300. and if COLUMN is in the middle of a tab character, change it to spaces.
  8301. Returns the actual column that it moved to.
  8302.  
  8303. arguments: (COLUMN &optional FORCE BUFFER)
  8304. Fvertical-motion
  8305. Move to start of frame line LINES lines down.
  8306. If LINES is negative, this is moving up.
  8307.  
  8308. The optional second argument WINDOW specifies the window to use for
  8309. parameters such as width, horizontal scrolling, and so on.
  8310. the default is the selected window.
  8311. Note that `vertical-motion' sets WINDOW's buffer's point, not
  8312. WINDOW's point. (This differs from FSF Emacs, which buggily always
  8313. sets current buffer's point, regardless of WINDOW.)
  8314.  
  8315. Sets point to position found; this may be start of line
  8316.  or just the start of a continuation line.
  8317. Returns number of lines moved; may be closer to zero than LINES
  8318.  if beginning or end of buffer was reached.
  8319. Optional second argument is WINDOW to move in.
  8320.  
  8321. arguments: (LINES &optional WINDOW)
  8322. Vindent-tabs-mode
  8323. *Indentation can insert tabs if this is non-nil.
  8324. Setting this variable automatically makes it local to the current buffer.Fignore-defer-gettext
  8325. If OBJ is of the form (defer-gettext "string"), return the string.
  8326. The purpose of the defer-gettext symbol is to identify strings which
  8327. are translated when they are referenced instead of when they are defined.
  8328.  
  8329. arguments: (OBJ)
  8330. Fgettext
  8331. Look up STRING in the default message domain and return its translation.
  8332. This function does nothing if I18N3 was not enabled when Emacs was compiled.
  8333.  
  8334. arguments: (STRING)
  8335. Fdgettext
  8336. Look up STRING in the specified message domain and return its translation.
  8337. This function does nothing if I18N3 was not enabled when Emacs was compiled.
  8338.  
  8339. arguments: (DOMAIN STRING)
  8340. Fbind-text-domain
  8341. Associate a pathname with a message domain.
  8342. Here's how the path to message files is constructed under SunOS 5.0:
  8343.   {pathname}/{LANG}/LC_MESSAGES/{domain}.mo
  8344. This function does nothing if I18N3 was not enabled when Emacs was compiled.
  8345.  
  8346. arguments: (DOMAIN PATHNAME)
  8347. Fset-domain
  8348. Specify the domain used for translating messages in this source file.
  8349. The domain declaration may only appear at top-level, and should precede
  8350. all function and variable definitions.
  8351.  
  8352. The presence of this declaration in a compiled file effectively sets the
  8353. domain of all functions and variables which are defined in that file.
  8354. Bug: it has no effect on source (.el) files, only compiled (.elc) files.
  8355.  
  8356. arguments: (DOMAIN-NAME)
  8357. Fmake-keymap
  8358. Construct and return a new keymap object.
  8359. All entries in it are nil, meaning "command undefined".
  8360.  
  8361. Optional argument NAME specifies a name to assign to the keymap,
  8362. as in `set-keymap-name'.  This name is only a debugging convenience;
  8363. it is not used except when printing the keymap.
  8364.  
  8365. arguments: (&optional NAME)
  8366. Fmake-sparse-keymap
  8367. Construct and return a new keymap object.
  8368. All entries in it are nil, meaning "command undefined".  The only
  8369. difference between this function and make-keymap is that this function
  8370. returns a "smaller" keymap (one that is expected to contain fewer
  8371. entries).  As keymaps dynamically resize, the distinction is not great.
  8372.  
  8373. Optional argument NAME specifies a name to assign to the keymap,
  8374. as in `set-keymap-name'.  This name is only a debugging convenience;
  8375. it is not used except when printing the keymap.
  8376.  
  8377. arguments: (&optional NAME)
  8378. Fkeymap-parents
  8379. Return the `parent' keymaps of the given keymap, or nil.
  8380. The parents of a keymap are searched for keybindings when a key sequence
  8381. isn't bound in this one.  `(current-global-map)' is the default parent
  8382. of all keymaps.
  8383.  
  8384. arguments: (KEYMAP)
  8385. Fset-keymap-parents
  8386. Sets the `parent' keymaps of the given keymap.
  8387. The parents of a keymap are searched for keybindings when a key sequence
  8388. isn't bound in this one.  `(current-global-map)' is the default parent
  8389. of all keymaps.
  8390.  
  8391. arguments: (KEYMAP PARENTS)
  8392. Fset-keymap-name
  8393. Set the `name' of the KEYMAP to NEW-NAME.
  8394. The name is only a debugging convenience; it is not used except
  8395. when printing the keymap.
  8396.  
  8397. arguments: (KEYMAP NEW-NAME)
  8398. Fkeymap-name
  8399. Return the `name' of KEYMAP.
  8400. The name is only a debugging convenience; it is not used except
  8401. when printing the keymap.
  8402.  
  8403. arguments: (KEYMAP)
  8404. Fset-keymap-prompt
  8405. Sets the `prompt' of KEYMAP to string NEW-PROMPT, or `nil'
  8406. if no prompt is desired.  The prompt is shown in the echo-area
  8407. when reading a key-sequence to be looked-up in this keymap.
  8408.  
  8409. arguments: (KEYMAP NEW-PROMPT)
  8410. Fkeymap-prompt
  8411. Return the `prompt' of the given keymap.
  8412. If non-nil, the prompt is shown in the echo-area
  8413. when reading a key-sequence to be looked-up in this keymap.
  8414.  
  8415. arguments: (KEYMAP &optional USE-INHERITED)
  8416. Fset-keymap-default-binding
  8417. Sets the default binding of KEYMAP to COMMAND, or `nil'
  8418. if no default is desired.  The default-binding is returned when
  8419. no other binding for a key-sequence is found in the keymap.
  8420. If a keymap has a non-nil default-binding, neither the keymap's
  8421. parents nor the current global map are searched for key bindings.
  8422.  
  8423. arguments: (KEYMAP COMMAND)
  8424. Fkeymap-default-binding
  8425. Return the default binding of KEYMAP, or `nil' if it has none.
  8426. The default-binding is returned when no other binding for a key-sequence
  8427. is found in the keymap.
  8428. If a keymap has a non-nil default-binding, neither the keymap's
  8429. parents nor the current global map are searched for key bindings.
  8430.  
  8431. arguments: (KEYMAP)
  8432. Fkeymapp
  8433. Return t if ARG is a keymap object.
  8434. The keymap may be autoloaded first if necessary.
  8435.  
  8436. arguments: (OBJECT)
  8437. Fcopy-keymap
  8438. Return a copy of the keymap KEYMAP.
  8439. The copy starts out with the same definitions of KEYMAP,
  8440. but changing either the copy or KEYMAP does not affect the other.
  8441. Any key definitions that are subkeymaps are recursively copied.
  8442.  
  8443. arguments: (KEYMAP)
  8444. Fkeymap-fullness
  8445. Return the number of bindings in the keymap.
  8446.  
  8447. arguments: (KEYMAP)
  8448. Fevent-matches-key-specifier-p
  8449. Return non-nil if EVENT matches KEY-SPECIFIER.
  8450. This can be useful, e.g., to determine if the user pressed `help-char' or
  8451. `quit-char'.
  8452.  
  8453. arguments: (EVENT KEY-SPECIFIER)
  8454. Fdefine-key
  8455. Define key sequence KEYS, in KEYMAP, as DEF.
  8456. KEYMAP is a keymap object.
  8457. KEYS is the sequence of keystrokes to bind, described below.
  8458. DEF is anything that can be a key's definition:
  8459.  nil (means key is undefined in this keymap);
  8460.  a command (a Lisp function suitable for interactive calling);
  8461.  a string or key sequence vector (treated as a keyboard macro);
  8462.  a keymap (to define a prefix key);
  8463.  a symbol; when the key is looked up, the symbol will stand for its
  8464.     function definition, that should at that time be one of the above,
  8465.     or another symbol whose function definition is used, and so on.
  8466.  a cons (STRING . DEFN), meaning that DEFN is the definition
  8467.     (DEFN should be a valid definition in its own right);
  8468.  or a cons (KEYMAP . CHAR), meaning use definition of CHAR in map KEYMAP.
  8469.  
  8470. Contrary to popular belief, the world is not ASCII.  When running under a
  8471. window manager, XEmacs can tell the difference between, for example, the
  8472. keystrokes control-h, control-shift-h, and backspace.  You can, in fact,
  8473. bind different commands to each of these.
  8474.  
  8475. A `key sequence' is a set of keystrokes.  A `keystroke' is a keysym and some
  8476. set of modifiers (such as control and meta).  A `keysym' is what is printed
  8477. on the keys on your keyboard.
  8478.  
  8479. A keysym may be represented by a symbol, or (if and only if it is equivalent
  8480. to an ASCII character in the range 32 - 255) by a character or its equivalent
  8481. ASCII code.  The `A' key may be represented by the symbol `A', the character
  8482. `?A', or by the number 65.  The `break' key may be represented only by the
  8483. symbol `break'.
  8484.  
  8485. A keystroke may be represented by a list: the last element of the list
  8486. is the key (a symbol, character, or number, as above) and the
  8487. preceding elements are the symbolic names of modifier keys (control,
  8488. meta, super, hyper, alt, and shift).  Thus, the sequence control-b is
  8489. represented by the forms `(control b)', `(control ?b)', and `(control
  8490. 98)'.  A keystroke may also be represented by an event object, as
  8491. returned by the `next-command-event' and `read-key-sequence'
  8492. functions.
  8493.  
  8494. Note that in this context, the keystroke `control-b' is *not* represented
  8495. by the number 2 (the ASCII code for ^B) or the character `?^B'.  See below.
  8496.  
  8497. The `shift' modifier is somewhat of a special case.  You should not (and
  8498. cannot) use `(meta shift a)' to mean `(meta A)', since for characters that
  8499. have ASCII equivalents, the state of the shift key is implicit in the
  8500. keysym (a vs. A).  You also cannot say `(shift =)' to mean `+', as that
  8501. sort of thing varies from keyboard to keyboard.  The shift modifier is for
  8502. use only with characters that do not have a second keysym on the same key,
  8503. such as `backspace' and `tab'.
  8504.  
  8505. A key sequence is a vector of keystrokes.  As a degenerate case, elements
  8506. of this vector may also be keysyms if they have no modifiers.  That is,
  8507. the `A' keystroke is represented by all of these forms:
  8508.     A    ?A    65    (A)    (?A)    (65)
  8509.     [A]    [?A]    [65]    [(A)]    [(?A)]    [(65)]
  8510.  
  8511. the `control-a' keystroke is represented by these forms:
  8512.     (control A)    (control ?A)    (control 65)
  8513.     [(control A)]    [(control ?A)]    [(control 65)]
  8514. the key sequence `control-c control-a' is represented by these forms:
  8515.     [(control c) (control a)]    [(control ?c) (control ?a)]
  8516.     [(control 99) (control 65)]    etc.
  8517.  
  8518. Mouse button clicks work just like keypresses: (control button1) means
  8519. pressing the left mouse button while holding down the control key.
  8520. [(control c) (shift button3)] means control-c, hold shift, click right.
  8521.  
  8522. Commands may be bound to the mouse-button up-stroke rather than the down-
  8523. stroke as well.  `button1' means the down-stroke, and `button1up' means the
  8524. up-stroke.  Different commands may be bound to the up and down strokes,
  8525. though that is probably not what you want, so be careful.
  8526.  
  8527. For backward compatibility, a key sequence may also be represented by a
  8528. string.  In this case, it represents the key sequence(s) that would
  8529. produce that sequence of ASCII characters in a purely ASCII world.  For
  8530. example, a string containing the ASCII backspace character, "\^H", would
  8531. represent two key sequences: `(control h)' and `backspace'.  Binding a
  8532. command to this will actually bind both of those key sequences.  Likewise
  8533. for the following pairs:
  8534.  
  8535.         control h    backspace
  8536.         control i       tab
  8537.         control m       return
  8538.         control j       linefeed
  8539.         control [       escape
  8540.         control @    control space
  8541.  
  8542. After binding a command to two key sequences with a form like
  8543.  
  8544.     (define-key global-map "\^X\^I" 'command-1)
  8545.  
  8546. it is possible to redefine only one of those sequences like so:
  8547.  
  8548.     (define-key global-map [(control x) (control i)] 'command-2)
  8549.     (define-key global-map [(control x) tab] 'command-3)
  8550.  
  8551. Of course, all of this applies only when running under a window system.  If
  8552. you're talking to XEmacs through a TTY connection, you don't get any of
  8553. these features.
  8554.  
  8555. arguments: (KEYMAP KEYS DEF)
  8556. Flookup-key
  8557. In keymap KEYMAP, look up key-sequence KEYS.  Return the definition.
  8558. Nil is returned if KEYS is unbound.  See documentation of `define-key'
  8559. for valid key definitions and key-sequence specifications.
  8560. A number is returned if KEYS is "too long"; that is, the leading
  8561. characters fail to be a valid sequence of prefix characters in KEYMAP.
  8562. The number is how many characters at the front of KEYS
  8563. it takes to reach a non-prefix command.
  8564.  
  8565. arguments: (KEYMAP KEYS &optional ACCEPT-DEFAULT)
  8566. Fcurrent-keymaps
  8567. Return a list of the current keymaps that will be searched for bindings.
  8568. This lists keymaps such as the current local map and the minor-mode maps,
  8569.  but does not list the parents of those keymaps.
  8570. EVENT-OR-KEYS controls which keymaps will be listed.
  8571. If EVENT-OR-KEYS is a mouse event (or a vector whose last element is a
  8572.  mouse event), the keymaps for that mouse event will be listed (see
  8573.  `key-binding').  Otherwise, the keymaps for key presses will be listed.
  8574.  
  8575. arguments: (&optional EVENT-OR-KEYS)
  8576. Fkey-binding
  8577. Return the binding for command KEYS in current keymaps.
  8578. KEYS is a string, a vector of events, or a vector of key-description lists
  8579. as described in the documentation for the `define-key' function.
  8580. The binding is probably a symbol with a function definition; see
  8581. the documentation for `lookup-key' for more information.
  8582.  
  8583. For key-presses, the order of keymaps searched is:
  8584.   - the `keymap' property of any extent(s) at point;
  8585.   - any applicable minor-mode maps;
  8586.   - the current-local-map of the current-buffer;
  8587.   - the current global map.
  8588.  
  8589. For mouse-clicks, the order of keymaps searched is:
  8590.   - the current-local-map of the `mouse-grabbed-buffer' if any;
  8591.   - the `keymap' property of any extent(s) at the position of the click
  8592.     (this includes modeline extents);
  8593.   - the modeline-map of the buffer corresponding to the modeline under
  8594.     the mouse (if the click happened over a modeline);
  8595.   - the value of toolbar-map in the current-buffer (if the click
  8596.     happened over a toolbar);
  8597.   - the current-local-map of the buffer under the mouse (does not
  8598.     apply to toolbar clicks);
  8599.   - any applicable minor-mode maps;
  8600.   - the current global map.
  8601.  
  8602. Note that if `overriding-local-map' or `overriding-terminal-local-map'
  8603. is non-nil, *only* those two maps and the current global map are searched.
  8604.  
  8605. arguments: (KEYS &optional ACCEPT-DEFAULT)
  8606. Fuse-global-map
  8607. Select KEYMAP as the global keymap.
  8608.  
  8609. arguments: (KEYMAP)
  8610. Fuse-local-map
  8611. Select KEYMAP as the local keymap in BUFFER.
  8612. If KEYMAP is nil, that means no local keymap.
  8613. If BUFFER is nil, the current buffer is assumed.
  8614.  
  8615. arguments: (KEYMAP &optional BUFFER)
  8616. Fcurrent-local-map
  8617. Return BUFFER's local keymap, or nil if it has none.
  8618. If BUFFER is nil, the current buffer is assumed.
  8619.  
  8620. arguments: (&optional BUFFER)
  8621. Fcurrent-global-map
  8622. Return the current global keymap.
  8623.  
  8624. arguments: ()
  8625. Fmap-keymap
  8626. Apply FUNCTION to each element of KEYMAP.
  8627. FUNCTION will be called with two arguments: a key-description list, and
  8628. the binding.  The order in which the elements of the keymap are passed to
  8629. the function is unspecified.  If the function inserts new elements into
  8630. the keymap, it may or may not be called with them later.  No element of
  8631. the keymap will ever be passed to the function more than once.
  8632.  
  8633. The function will not be called on elements of this keymap's parents
  8634. (see the function `keymap-parents') or upon keymaps which are contained
  8635. within this keymap (multi-character definitions).
  8636. It will be called on "meta" characters since they are not really
  8637. two-character sequences.
  8638.  
  8639. If the optional third argument SORT-FIRST is non-nil, then the elements of
  8640. the keymap will be passed to the mapper function in a canonical order.
  8641. Otherwise, they will be passed in hash (that is, random) order, which is
  8642. faster.
  8643.  
  8644. arguments: (FUNCTION KEYMAP &optional SORT-FIRST)
  8645. Faccessible-keymaps
  8646. Find all keymaps accessible via prefix characters from KEYMAP.
  8647. Returns a list of elements of the form (KEYS . MAP), where the sequence
  8648. KEYS starting from KEYMAP gets you to MAP.  These elements are ordered
  8649. so that the KEYS increase in length.  The first element is ([] . KEYMAP).
  8650. An optional argument PREFIX, if non-nil, should be a key sequence;
  8651. then the value includes only maps for prefixes that start with PREFIX.
  8652.  
  8653. arguments: (KEYMAP &optional PREFIX)
  8654. Fkey-description
  8655. Return a pretty description of key-sequence KEYS.
  8656. Control characters turn into "C-foo" sequences, meta into "M-foo",
  8657. spaces are put between sequence elements, etc...
  8658.  
  8659. arguments: (KEYS)
  8660. Fsingle-key-description
  8661. Return a pretty description of command character KEY.
  8662. Control characters turn into C-whatever, etc.
  8663. This differs from `text-char-description' in that it returns a description
  8664. of a key read from the user rather than a character from a buffer.
  8665.  
  8666. arguments: (KEY)
  8667. Ftext-char-description
  8668. Return a pretty description of file-character CHR.
  8669. Unprintable characters turn into "^char" or \NNN, depending on the value
  8670. of the `ctl-arrow' variable.
  8671. This differs from `single-key-description' in that it returns a description
  8672. of a character from a buffer rather than a key read from the user.
  8673.  
  8674. arguments: (CHR)
  8675. Fwhere-is-internal
  8676. Return list of keys that invoke DEFINITION in KEYMAPS.
  8677. KEYMAPS can be either a keymap (meaning search in that keymap and the
  8678. current global keymap) or a list of keymaps (meaning search in exactly
  8679. those keymaps and no others).  If KEYMAPS is nil, search in the currently
  8680. applicable maps for EVENT-OR-KEYS (this is equivalent to specifying
  8681. `(current-keymaps EVENT-OR-KEYS)' as the argument to KEYMAPS).
  8682.  
  8683. If optional 3rd arg FIRSTONLY is non-nil, return a vector representing
  8684.  the first key sequence found, rather than a list of all possible key
  8685.  sequences.
  8686.  
  8687. If optional 4th arg NOINDIRECT is non-nil, don't follow indirections
  8688.  to other keymaps or slots.  This makes it possible to search for an
  8689.  indirect definition itself.
  8690.  
  8691. arguments: (DEFINITION &optional KEYMAPS FIRSTONLY NOINDIRECT EVENT-OR-KEYS)
  8692. Fdescribe-bindings-internal
  8693. Insert a list of all defined keys and their definitions in MAP.
  8694. Optional second argument ALL says whether to include even "uninteresting"
  8695. definitions (ie symbols with a non-nil `suppress-keymap' property.
  8696. Third argument SHADOW is a list of keymaps whose bindings shadow those
  8697. of map; if a binding is present in any shadowing map, it is not printed.
  8698. Fourth argument PREFIX, if non-nil, should be a key sequence;
  8699. only bindings which start with that key sequence will be printed.
  8700. Fifth argument MOUSE-ONLY-P says to only print bindings for mouse clicks.
  8701.  
  8702. arguments: (MAP &optional ALL SHADOW PREFIX MOUSE-ONLY-P)
  8703. Vmeta-prefix-char
  8704. Meta-prefix character.
  8705. This character followed by some character `foo' turns into `Meta-foo'.
  8706. This can be any form recognized as a single key specifier.
  8707. To disable the meta-prefix-char, set it to a negative number.Vmouse-grabbed-buffer
  8708. A buffer which should be consulted first for all mouse activity.
  8709. When a mouse-click is processed, it will first be looked up in the
  8710. local-map of this buffer, and then through the normal mechanism if there
  8711. is no binding for that click.  This buffer's value of `mode-motion-hook'
  8712. will be consulted instead of the `mode-motion-hook' of the buffer of the
  8713. window under the mouse.  You should *bind* this, not set it.Voverriding-local-map
  8714. Keymap that overrides all other local keymaps.
  8715. If this variable is non-nil, it is used as a keymap instead of the
  8716. buffer's local map, and the minor mode keymaps and extent-local keymaps.
  8717. You should *bind* this, not set it.Vkey-translation-map
  8718. Keymap of key translations that can override keymaps.
  8719. This keymap works like `function-key-map', but comes after that,
  8720. and applies even for keys that have ordinary bindings.Vkeymap-tick
  8721. Incremented for each change to any keymap.Fload-internal
  8722. Execute a file of Lisp code named FILE; no coding-system frobbing.
  8723. This function is identical to `load' except for the handling of the
  8724. CODESYS and USED-CODESYS arguments under XEmacs/Mule. (When Mule
  8725. support is not present, both functions are identical and ignore the
  8726. CODESYS and USED-CODESYS arguments.)
  8727.  
  8728. If support for Mule exists in this Emacs, the file is decoded
  8729. according to CODESYS; if omitted, no conversion happens.  If
  8730. USED-CODESYS is non-nil, it should be a symbol, and the actual coding
  8731. system that was used for the decoding is stored into it.  It will in
  8732. general be different from CODESYS if CODESYS specifies automatic
  8733. encoding detection or end-of-line detection.
  8734.  
  8735. arguments: (FILE &optional NO-ERROR NOMESSAGE NOSUFFIX CODESYS USED-CODESYS)
  8736. Flocate-file
  8737. Search for FILENAME through PATH-LIST, expanded by one of the optional
  8738. SUFFIXES (string of suffixes separated by ":"s), checking for access
  8739. MODE (0|1|2|4 = exists|executable|writeable|readable), default readable.
  8740.  
  8741. `locate-file' keeps hash tables of the directories it searches through,
  8742. in order to speed things up.  It tries valiantly to not get confused in
  8743. the face of a changing and unpredictable environment, but can occasionally
  8744. get tripped up.  In this case, you will have to call
  8745. `locate-file-clear-hashing' to get it back on track.  See that function
  8746. for details.
  8747.  
  8748. arguments: (FILENAME PATH-LIST &optional SUFFIXES MODE)
  8749. Flocate-file-clear-hashing
  8750. Clear the hash records for the specified list of directories.
  8751. `locate-file' uses a hashing scheme to speed lookup, and will correctly
  8752. track the following environmental changes:
  8753.  
  8754. -- changes of any sort to the list of directories to be searched.
  8755. -- addition and deletion of non-shadowing files (see below) from the
  8756.    directories in the list.
  8757. -- byte-compilation of a .el file into a .elc file.
  8758.  
  8759. `locate-file' will primarily get confused if you add a file that shadows
  8760. (i.e. has the same name as) another file further down in the directory list.
  8761. In this case, you must call `locate-file-clear-hashing'.
  8762.  
  8763. arguments: (PATH)
  8764. Feval-buffer
  8765. Execute BUFFER as Lisp code.
  8766. Programs can pass two arguments, BUFFER and PRINTFLAG.
  8767. BUFFER is the buffer to evaluate (nil means use current buffer).
  8768. PRINTFLAG controls printing of output:
  8769. nil means discard it; anything else is stream for print.
  8770.  
  8771. If there is no error, point does not move.  If there is an error,
  8772. point remains at the end of the last character read from the buffer.
  8773. Execute BUFFER as Lisp code.
  8774.  
  8775. arguments: (&optional BUFNAME PRINTFLAG)
  8776. Feval-region
  8777. Execute the region as Lisp code.
  8778. When called from programs, expects two arguments,
  8779. giving starting and ending indices in the current buffer
  8780. of the text to be executed.
  8781. Programs can pass third argument PRINTFLAG which controls output:
  8782. nil means discard it; anything else is stream for printing it.
  8783.  
  8784. If there is no error, point does not move.  If there is an error,
  8785. point remains at the end of the last character read from the buffer.
  8786.  
  8787. Note:  Before evaling the region, this function narrows the buffer to it.
  8788. If the code being eval'd should happen to trigger a redisplay you may
  8789. see some text temporarily disappear because of this.
  8790.  
  8791. arguments: (B E &optional PRINTFLAG)
  8792. Fread
  8793. Read one Lisp expression as text from STREAM, return as Lisp object.
  8794. If STREAM is nil, use the value of `standard-input' (which see).
  8795. STREAM or the value of `standard-input' may be:
  8796.  a buffer (read from point and advance it)
  8797.  a marker (read from where it points and advance it)
  8798.  a function (call it with no arguments for each character,
  8799.      call it with a char as argument to push a char back)
  8800.  a string (takes text from string, starting at the beginning)
  8801.  t (read text line using minibuffer and use it).
  8802.  
  8803. arguments: (&optional STREAM)
  8804. Fread-from-string
  8805. Read one Lisp expression which is represented as text by STRING.
  8806. Returns a cons: (OBJECT-READ . FINAL-STRING-INDEX).
  8807. START and END optionally delimit a substring of STRING from which to read;
  8808.  they default to 0 and (length STRING) respectively.
  8809.  
  8810. arguments: (STRING &optional START END)
  8811. Vvalues
  8812. List of values of all expressions which were read, evaluated and printed.
  8813. Order is reverse chronological.Vstandard-input
  8814. Stream for read to get input from.
  8815. See documentation of `read' for possible values.Vload-path
  8816. *List of directories to search for files to load.
  8817. Each element is a string (directory name) or nil (try default directory).
  8818.  
  8819. Note that the elements of this list *may not* begin with "~", so you must
  8820. call `expand-file-name' on them before adding them to this list.
  8821.  
  8822. Initialized based on EMACSLOADPATH environment variable, if any,
  8823. otherwise to default specified in by file `paths.h' when XEmacs was built.
  8824. If there were no paths specified in `paths.h', then XEmacs chooses a default
  8825. value for this variable by looking around in the file-system near the
  8826. directory in which the XEmacs executable resides.Vload-in-progress
  8827. Non-nil iff inside of `load'.Vafter-load-alist
  8828. An alist of expressions to be evalled when particular files are loaded.
  8829. Each element looks like (FILENAME FORMS...).
  8830. When `load' is run and the file-name argument is FILENAME,
  8831. the FORMS in the corresponding element are executed at the end of loading.
  8832.  
  8833. FILENAME must match exactly!  Normally FILENAME is the name of a library,
  8834. with no directory specified, since that is how `load' is normally called.
  8835. An error in FORMS does not undo the load,
  8836. but does prevent execution of the rest of the FORMS.Vload-warn-when-source-newer
  8837. *Whether `load' should check whether the source is newer than the binary.
  8838. If this variable is true, then when a `.elc' file is being loaded and the
  8839. corresponding `.el' is newer, a warning message will be printed.Vload-warn-when-source-only
  8840. *Whether `load' should warn when loading a `.el' file instead of an `.elc'.
  8841. If this variable is true, then when `load' is called with a filename without
  8842. an extension, and the `.elc' version doesn't exist but the `.el' version does,
  8843. then a message will be printed.  If an explicit extension is passed to `load',
  8844. no warning will be printed.Vload-ignore-elc-files
  8845. *Whether `load' should ignore `.elc' files when a suffix is not given.
  8846. This is normally used only to bootstrap the `.elc' files when building XEmacs.Vload-history
  8847. Alist mapping source file names to symbols and features.
  8848. Each alist element is a list that starts with a file name,
  8849. except for one element (optional) that starts with nil and describes
  8850. definitions evaluated from buffers not visiting files.
  8851. The remaining elements of each list are symbols defined as functions
  8852. or variables, and cons cells `(provide . FEATURE)' and `(require . FEATURE)'.Vcurrent-load-list
  8853. Used for internal purposes by `load'.Vload-file-name
  8854. Full name of file being loaded by `load'.Vload-read-function
  8855. "Function used by `load' and `eval-region' for reading expressions.
  8856. The default is nil, which means use the function `read'.Vload-force-doc-strings
  8857. Non-nil means `load' should force-load all dynamic doc strings.
  8858. This is useful when the file being loaded is a temporary copy.Vsource-directory
  8859. Directory in which XEmacs sources were found when XEmacs was built.
  8860. You cannot count on them to still be there!Vfail-on-bucky-bit-character-escapes
  8861. Whether `read' should signal an error when it encounters unsupported
  8862. character escape syntaxes or just read them incorrectly.Fstart-kbd-macro
  8863. Record subsequent keyboard and menu input, defining a keyboard macro.
  8864. The commands are recorded even as they are executed.
  8865. Use \[end-kbd-macro] to finish recording and make the macro available.
  8866. Use \[name-last-kbd-macro] to give it a permanent name.
  8867. Non-nil arg (prefix arg) means append to last macro defined;
  8868.  This begins by re-executing that macro as if you typed it again.
  8869.  
  8870. arguments: (APPEND)
  8871. Fend-kbd-macro
  8872. Finish defining a keyboard macro.
  8873. The definition was started by \[start-kbd-macro].
  8874. The macro is now available for use via \[call-last-kbd-macro],
  8875. or it can be given a name with \[name-last-kbd-macro] and then invoked
  8876. under that name.
  8877.  
  8878. With numeric arg, repeat macro now that many times,
  8879. counting the definition just completed as the first repetition.
  8880. An argument of zero means repeat until error.
  8881.  
  8882. arguments: (&optional ARG)
  8883. Fcancel-kbd-macro-events
  8884. Cancel the events added to a keyboard macro for this command.
  8885.  
  8886. arguments: ()
  8887. Fcall-last-kbd-macro
  8888. Call the last keyboard macro that you defined with \[start-kbd-macro].
  8889.  
  8890. A prefix argument serves as a repeat count.  Zero means repeat until error.
  8891.  
  8892. To make a macro permanent so you can call it even after
  8893. defining others, use \[name-last-kbd-macro].
  8894.  
  8895. arguments: (&optional PREFIX)
  8896. Fexecute-kbd-macro
  8897. Execute MACRO as string of editor command characters.
  8898. If MACRO is a symbol, its function definition is used.
  8899. COUNT is a repeat count, or nil for once, or 0 for infinite loop.
  8900.  
  8901. arguments: (MACRO &optional PREFIXARG)
  8902. Vexecuting-macro
  8903. Currently executing keyboard macro (a vector of events or string);
  8904. nil if none executing.Vexecuting-kbd-macro
  8905. Currently executing keyboard macro (a vector of events or string);
  8906. nil if none executing.Fmarker-buffer
  8907. Return the buffer that MARKER points into, or nil if none.
  8908. Returns nil if MARKER points into a dead buffer.
  8909.  
  8910. arguments: (MARKER)
  8911. Fmarker-position
  8912. Return the position MARKER points at, as a character number.
  8913. Returns `nil' if marker doesn't point anywhere.
  8914.  
  8915. arguments: (MARKER)
  8916. Fset-marker
  8917. Position MARKER before character number NUMBER in BUFFER.
  8918. BUFFER defaults to the current buffer.
  8919. If NUMBER is nil, makes marker point nowhere.
  8920. Then it no longer slows down editing in any buffer.
  8921. If this marker was returned by (point-marker t), then changing its position
  8922. moves point.  You cannot change its buffer or make it point nowhere.
  8923. Returns MARKER.
  8924.  
  8925. arguments: (MARKER NUMBER &optional BUFFER)
  8926. Fcopy-marker
  8927. Return a new marker pointing at the same place as MARKER.
  8928. If argument is a number, makes a new marker pointing
  8929. at that position in the current buffer.
  8930. The optional argument TYPE specifies the insertion type of the new marker;
  8931. see `marker-insertion-type'.
  8932.  
  8933. arguments: (MARKER &optional TYPE)
  8934. Fmarker-insertion-type
  8935. Return insertion type of MARKER: t if it stays after inserted text.
  8936. nil means the marker stays before text inserted there.
  8937.  
  8938. arguments: (MARKER)
  8939. Fset-marker-insertion-type
  8940. Set the insertion-type of MARKER to TYPE.
  8941. If TYPE is t, it means the marker advances when you insert text at it.
  8942. If TYPE is nil, it means the marker stays behind when you insert text at it.
  8943.  
  8944. arguments: (MARKER TYPE)
  8945. Fmd5
  8946. Return the MD5 (a secure message digest algorithm) of an object.
  8947. OBJECT is either a string or a buffer.
  8948. Optional arguments START and END denote buffer positions for computing the
  8949. hash of a portion of OBJECT.
  8950.  
  8951. arguments: (OBJECT &optional START END)
  8952. Fminibuffer-depth
  8953. Return current depth of activations of minibuffer, a nonnegative integer.
  8954.  
  8955. arguments: ()
  8956. Fset-minibuffer-preprompt
  8957. Set the minibuffer preprompt string to PREPROMPT. This is used by language
  8958. input methods to relay state information to the user.
  8959.  
  8960. arguments: (PREPROMPT)
  8961. Fread-minibuffer-internal
  8962. Lowest-level interface to minibuffers.  Don't call this.
  8963.  
  8964. arguments: (PROMPT)
  8965. Ftry-completion
  8966. Return common substring of all completions of STRING in ALIST.
  8967. Each car of each element of ALIST is tested to see if it begins with STRING.
  8968. All that match are compared together; the longest initial sequence
  8969. common to all matches is returned as a string.
  8970. If there is no match at all, nil is returned.
  8971. For an exact match, t is returned.
  8972.  
  8973. ALIST can be an obarray instead of an alist.
  8974. Then the print names of all symbols in the obarray are the possible matches.
  8975.  
  8976. ALIST can also be a function to do the completion itself.
  8977. It receives three arguments: the values STRING, PREDICATE and nil.
  8978. Whatever it returns becomes the value of `try-completion'.
  8979.  
  8980. If optional third argument PREDICATE is non-nil,
  8981. it is used to test each possible match.
  8982. The match is a candidate only if PREDICATE returns non-nil.
  8983. The argument given to PREDICATE is the alist element or the symbol from the obarray.
  8984.  
  8985. arguments: (STRING ALIST &optional PRED)
  8986. Fall-completions
  8987. Search for partial matches to STRING in ALIST.
  8988. Each car of each element of ALIST is tested to see if it begins with STRING.
  8989. The value is a list of all the strings from ALIST that match.
  8990. ALIST can be an obarray instead of an alist.
  8991. Then the print names of all symbols in the obarray are the possible matches.
  8992.  
  8993. ALIST can also be a function to do the completion itself.
  8994. It receives three arguments: the values STRING, PREDICATE and t.
  8995. Whatever it returns becomes the value of `all-completions'.
  8996.  
  8997. If optional third argument PREDICATE is non-nil,
  8998. it is used to test each possible match.
  8999. The match is a candidate only if PREDICATE returns non-nil.
  9000. The argument given to PREDICATE is the alist element or
  9001. the symbol from the obarray.
  9002.  
  9003. arguments: (STRING ALIST &optional PRED)
  9004. Vminibuffer-setup-hook
  9005. Normal hook run just after entry to minibuffer.Vcompletion-ignore-case
  9006. Non-nil means don't consider case significant in completion.Vcompletion-regexp-list
  9007. List of regexps that should restrict possible completions.
  9008. Each completion has to match all regexps in this list.Fmake-color-instance
  9009. Creates a new `color-instance' object of the specified color.
  9010. DEVICE specifies the device this object applies to and defaults to the
  9011. selected device.  An error is signalled if the color is unknown or cannot
  9012. be allocated; however, if NOERROR is non-nil, nil is simply returned in
  9013. this case. (And if NOERROR is other than t, a warning may be issued.)
  9014.  
  9015. The returned object is a normal, first-class lisp object.  The way you
  9016. `deallocate' the color is the way you deallocate any other lisp object:
  9017. you drop all pointers to it and allow it to be garbage collected.  When
  9018. these objects are GCed, the underlying window-system data (e.g. X object)
  9019. is deallocated as well.
  9020.  
  9021. arguments: (NAME &optional DEVICE NO-ERROR)
  9022. Fcolor-instance-p
  9023. Return non-nil if OBJECT is a color instance.
  9024.  
  9025. arguments: (OBJECT)
  9026. Fcolor-instance-name
  9027. Return the name used to allocate COLOR-INSTANCE.
  9028.  
  9029. arguments: (COLOR-INSTANCE)
  9030. Fcolor-instance-rgb-components
  9031. Return a three element list containing the red, green, and blue
  9032. color components of COLOR-INSTANCE, or nil if unknown.
  9033.  
  9034. arguments: (COLOR-INSTANCE)
  9035. Fvalid-color-name-p
  9036. Return true if COLOR names a valid color for the current device.
  9037.  
  9038. Valid color names for X are listed in the file /usr/lib/X11/rgb.txt, or
  9039. whatever the equivalent is on your system.
  9040.  
  9041. Valid color names for TTY are those which have an ISO 6429 (ANSI) sequence.
  9042. In addition to being a color this may be one of a number of attributes
  9043. such as `blink'.
  9044.  
  9045. arguments: (COLOR &optional DEVICE)
  9046. Fmake-font-instance
  9047. Creates a new `font-instance' object of the specified name.
  9048. DEVICE specifies the device this object applies to and defaults to the
  9049. selected device.  An error is signalled if the font is unknown or cannot
  9050. be allocated; however, if NOERROR is non-nil, nil is simply returned in
  9051. this case.
  9052.  
  9053. The returned object is a normal, first-class lisp object.  The way you
  9054. `deallocate' the font is the way you deallocate any other lisp object:
  9055. you drop all pointers to it and allow it to be garbage collected.  When
  9056. these objects are GCed, the underlying X data is deallocated as well.
  9057.  
  9058. arguments: (NAME &optional DEVICE NO-ERROR)
  9059. Ffont-instance-p
  9060. Return non-nil if OBJECT is a font instance.
  9061.  
  9062. arguments: (OBJECT)
  9063. Ffont-instance-name
  9064. Return the name used to allocate FONT-INSTANCE.
  9065.  
  9066. arguments: (FONT-INSTANCE)
  9067. Ffont-instance-ascent
  9068. Return the ascent in pixels of FONT-INSTANCE.
  9069. The returned value is the maximum ascent for all characters in the font,
  9070. where a character's ascent is the number of pixels above (and including)
  9071. the baseline.
  9072.  
  9073. arguments: (FONT-INSTANCE)
  9074. Ffont-instance-descent
  9075. Return the descent in pixels of FONT-INSTANCE.
  9076. The returned value is the maximum descent for all characters in the font,
  9077. where a character's descent is the number of pixels below the baseline.
  9078. (Many characters to do not have any descent.  Typical characters with a
  9079. descent are lowercase p and lowercase g.)
  9080.  
  9081. arguments: (FONT-INSTANCE)
  9082. Ffont-instance-width
  9083. Return the width in pixels of FONT-INSTANCE.
  9084. The returned value is the average width for all characters in the font.
  9085.  
  9086. arguments: (FONT-INSTANCE)
  9087. Ffont-instance-proportional-p
  9088. Return whether FONT-INSTANCE is proportional.
  9089. This means that different characters in the font have different widths.
  9090.  
  9091. arguments: (FONT-INSTANCE)
  9092. Ffont-instance-truename
  9093. Return the canonical name of FONT-INSTANCE.
  9094. Font names are patterns which may match any number of fonts, of which
  9095. the first found is used.  This returns an unambiguous name for that font
  9096. (but not necessarily its only unambiguous name).
  9097.  
  9098. arguments: (FONT-INSTANCE)
  9099. Ffont-instance-properties
  9100. Return the properties (an alist or nil) of FONT-INSTANCE.
  9101.  
  9102. arguments: (FONT-INSTANCE)
  9103. Flist-fonts
  9104. Return a list of font names matching the given pattern.
  9105. DEVICE specifies which device to search for names, and defaults to the
  9106. currently selected device.
  9107.  
  9108. arguments: (PATTERN &optional DEVICE)
  9109. Fcolor-specifier-p
  9110. Return non-nil if OBJECT is a color specifier.
  9111.  
  9112. Valid instantiators for color specifiers are:
  9113.  
  9114. -- a string naming a color (e.g. under X this might be "lightseagreen2"
  9115.    or "#F534B2")
  9116. -- a color instance (use that instance directly if the device matches,
  9117.    or use the string that generated it)
  9118. -- a vector of no elements (only on TTY's; this means to set no color
  9119.    at all, thus using the "natural" color of the terminal's text)
  9120. -- a vector of one or two elements: a face to inherit from, and
  9121.    optionally a symbol naming which property of that face to inherit,
  9122.    either `foreground' or `background' (if omitted, defaults to the same
  9123.    property that this color specifier is used for; if this specifier is
  9124.    not part of a face, the instantiator would not be valid)
  9125.  
  9126. arguments: (OBJECT)
  9127. Ffont-specifier-p
  9128. Return non-nil if OBJECT is a font specifier.
  9129.  
  9130. Valid instantiators for font specifiers are:
  9131.  
  9132. -- a string naming a font (e.g. under X this might be
  9133.    "-*-courier-medium-r-*-*-*-140-*-*-*-*-iso8859-*" for a 14-point
  9134.    upright medium-weight Courier font)
  9135. -- a font instance (use that instance directly if the device matches,
  9136.    or use the string that generated it)
  9137. -- a vector of no elements (only on TTY's; this means to set no font
  9138.    at all, thus using the "natural" font of the terminal's text)
  9139. -- a vector of one element (a face to inherit from)
  9140.  
  9141. arguments: (OBJECT)
  9142. Fface-boolean-specifier-p
  9143. Return non-nil if OBJECT is a face-boolean specifier.
  9144.  
  9145. Valid instantiators for face-boolean specifiers are
  9146.  
  9147. -- t or nil
  9148. -- a vector of two or three elements: a face to inherit from,
  9149.    optionally a symbol naming the property of that face to inherit from
  9150.    (if omitted, defaults to the same property that this face-boolean
  9151.    specifier is used for; if this specifier is not part of a face,
  9152.    the instantiator would not be valid), and optionally a value which,
  9153.    if non-nil, means to invert the sense of the inherited property.
  9154.  
  9155. arguments: (OBJECT)
  9156. Fwrite-char
  9157. Output character CH to stream STREAM.
  9158. STREAM defaults to the value of `standard-output' (which see).
  9159.  
  9160. arguments: (CH &optional STREAM)
  9161. Fwith-output-to-temp-buffer
  9162. Bind `standard-output' to buffer BUFNAME, eval BODY, then show that buffer.
  9163. The buffer is cleared out initially, and marked as unmodified when done.
  9164. All output done by BODY is inserted in that buffer by default.
  9165. The buffer is displayed in another window, but not selected.
  9166. The value of the last form in BODY is returned.
  9167. If BODY does not finish normally, the buffer BUFNAME is not displayed.
  9168.  
  9169. If variable `temp-buffer-show-function' is non-nil, call it at the end
  9170. to get the buffer displayed.  It gets one argument, the buffer to display.Fterpri
  9171. Output a newline to STREAM.
  9172. If STREAM is omitted or nil, the value of `standard-output' is used.
  9173.  
  9174. arguments: (&optional STREAM)
  9175. Fprin1
  9176. Output the printed representation of OBJECT, any Lisp object.
  9177. Quoting characters are printed when needed to make output that `read'
  9178. can handle, whenever this is possible.
  9179. Output stream is STREAM, or value of `standard-output' (which see).
  9180.  
  9181. arguments: (OBJECT &optional STREAM)
  9182. Fprin1-to-string
  9183. Return a string containing the printed representation of OBJECT,
  9184. any Lisp object.  Quoting characters are used when needed to make output
  9185. that `read' can handle, whenever this is possible, unless the optional
  9186. second argument NOESCAPE is non-nil.
  9187.  
  9188. arguments: (OBJECT &optional NOESCAPE)
  9189. Fprinc
  9190. Output the printed representation of OBJECT, any Lisp object.
  9191. No quoting characters are used; no delimiters are printed around
  9192. the contents of strings.
  9193. Output stream is STREAM, or value of standard-output (which see).
  9194.  
  9195. arguments: (OBJ &optional STREAM)
  9196. Fprint
  9197. Output the printed representation of OBJECT, with newlines around it.
  9198. Quoting characters are printed when needed to make output that `read'
  9199. can handle, whenever this is possible.
  9200. Output stream is STREAM, or value of `standard-output' (which see).
  9201.  
  9202. arguments: (OBJ &optional STREAM)
  9203. Ferror-message-string
  9204. Convert an error value (ERROR-SYMBOL . DATA) to an error message.
  9205.  
  9206. arguments: (DATA)
  9207. Fdisplay-error
  9208. Display an error message for ERROR-OBJECT to STREAM.
  9209.  
  9210. arguments: (ERROR-OBJECT STREAM)
  9211. Falternate-debugging-output
  9212. Append CHARACTER to the array `alternate_do_string'.
  9213. This can be used in place of `external-debugging-output' as a function
  9214. to be passed to `print'.  Before calling `print', set `alternate_do_pointer'
  9215. to 0.
  9216.  
  9217.  
  9218. arguments: (CHARACTER)
  9219. Fexternal-debugging-output
  9220. Write CHAR-OR-STRING to stderr or stdout.
  9221. If optional arg STDOUT-P is non-nil, write to stdout; otherwise, write
  9222. to stderr.  You can use this function to write directly to the terminal.
  9223. This function can be used as the STREAM argument of Fprint() or the like.
  9224.  
  9225. If you have opened a termscript file (using `open-termscript'), then
  9226. the output also will be logged to this file.
  9227.  
  9228. arguments: (CHAR-OR-STRING &optional STDOUT-P DEVICE)
  9229. Fopen-termscript
  9230. Start writing all terminal output to FILE as well as the terminal.
  9231. FILE = nil means just close any termscript file currently open.
  9232.  
  9233. arguments: (FILE)
  9234. Vstandard-output
  9235. Output stream `print' uses by default for outputting a character.
  9236. This may be any function of one argument.
  9237. It may also be a buffer (output is inserted before point)
  9238. or a marker (output is inserted and the marker is advanced)
  9239. or the symbol t (output appears in the minibuffer line).Vfloat-output-format
  9240. The format descriptor string that lisp uses to print floats.
  9241. This is a %-spec like those accepted by `printf' in C,
  9242. but with some restrictions.  It must start with the two characters `%.'.
  9243. After that comes an integer precision specification,
  9244. and then a letter which controls the format.
  9245. The letters allowed are `e', `f' and `g'.
  9246. Use `e' for exponential notation "DIG.DIGITSeEXPT"
  9247. Use `f' for decimal point notation "DIGITS.DIGITS".
  9248. Use `g' to choose the shorter of those two formats for the number at hand.
  9249. The precision in any of these cases is the number of digits following
  9250. the decimal point.  With `f', a precision of 0 means to omit the
  9251. decimal point.  0 is not allowed with `f' or `g'.
  9252.  
  9253. A value of nil means to use `%.16g'.
  9254.  
  9255. Regardless of the value of `float-output-format', a floating point number
  9256. will never be printed in such a way that it is ambiguous with an integer;
  9257. that is, a floating-point number will always be printed with a decimal
  9258. point and/or an exponent, even if the digits following the decimal point
  9259. are all zero.  This is to preserve read-equivalence.Vprint-length
  9260. Maximum length of list or vector to print before abbreviating.
  9261. A value of nil means no limit.Vprint-string-length
  9262. Maximum length of string to print before abbreviating.
  9263. A value of nil means no limit.Vprint-level
  9264. Maximum depth of list nesting to print before abbreviating.
  9265. A value of nil means no limit.Vprint-escape-newlines
  9266. Non-nil means print newlines in strings as backslash-n.Vprint-readably
  9267. If non-nil, then all objects will be printed in a readable form.
  9268. If an object has no readable representation, then an error is signalled.
  9269. When print-readably is true, compiled-function objects will be written in
  9270.  #[...] form instead of in #<compiled-function [...]> form, and two-element
  9271.  lists of the form (quote object) will be written as the equivalent 'object.
  9272. Do not SET this variable; bind it instead.Vprint-gensym
  9273. If non-nil, then uninterned symbols will be printed specially.
  9274. Uninterned symbols are those which are not present in `obarray', that is,
  9275. those which were made with `make-symbol' or by calling `intern' with a
  9276. second argument.
  9277.  
  9278. When print-gensym is true, such symbols will be preceded by "#:", which
  9279. causes the reader to create a new symbol instead of interning and returning
  9280. an existing one.  Beware: the #: syntax creates a new symbol each time it is
  9281. seen, so if you print an object which contains two pointers to the same
  9282. uninterned symbol, `read' will not duplicate that structure.
  9283.  
  9284. Also, since XEmacs has no real notion of packages, there is no way for the
  9285. printer to distinguish between symbols interned in no obarray, and symbols
  9286. interned in an alternate obarray.Vprint-message-label
  9287. Label for minibuffer messages created with `print'.  This should
  9288. generally be bound with `let' rather than set.  (See `display-message'.)Fprocessp
  9289. Return t if OBJECT is a process.
  9290.  
  9291. arguments: (OBJ)
  9292. Fprocess-list
  9293. Return a list of all processes.
  9294.  
  9295. arguments: ()
  9296. Fget-process
  9297. Return the process named NAME, or nil if there is none.
  9298.  
  9299. arguments: (NAME)
  9300. Fget-buffer-process
  9301. Return the (or, a) process associated with BUFFER.
  9302. BUFFER may be a buffer or the name of one.
  9303.  
  9304. arguments: (NAME)
  9305. Fprocess-id
  9306. Return the process id of PROCESS.
  9307. This is the pid of the Unix process which PROCESS uses or talks to.
  9308. For a network connection, this value is a cons of
  9309.  (foreign-network-port . foreign-host-name).
  9310.  
  9311. arguments: (PROC)
  9312. Fprocess-name
  9313. Return the name of PROCESS, as a string.
  9314. This is the name of the program invoked in PROCESS,
  9315. possibly modified to make it unique among process names.
  9316.  
  9317. arguments: (PROC)
  9318. Fprocess-command
  9319. Return the command that was executed to start PROCESS.
  9320. This is a list of strings, the first string being the program executed
  9321. and the rest of the strings being the arguments given to it.
  9322.  
  9323. arguments: (PROC)
  9324. Fstart-process-internal
  9325. Start a program in a subprocess.  Return the process object for it.
  9326. Args are NAME BUFFER PROGRAM &rest PROGRAM-ARGS
  9327. NAME is name for process.  It is modified if necessary to make it unique.
  9328. BUFFER is the buffer or (buffer-name) to associate with the process.
  9329.  Process output goes at end of that buffer, unless you specify
  9330.  an output stream or filter function to handle the output.
  9331.  BUFFER may be also nil, meaning that this process is not associated
  9332.  with any buffer
  9333. Third arg is program file name.  It is searched for as in the shell.
  9334. Remaining arguments are strings to give program as arguments.
  9335. INCODE and OUTCODE specify the coding-system objects used in input/output
  9336.  from/to the process.Fopen-network-stream-internal
  9337. Open a TCP connection for a service to a host.
  9338. Returns a subprocess-object to represent the connection.
  9339. Input and output work as for subprocesses; `delete-process' closes it.
  9340.  
  9341. NAME is name for process.  It is modified if necessary to make it unique.
  9342. BUFFER is the buffer (or buffer-name) to associate with the process.
  9343.  Process output goes at end of that buffer, unless you specify
  9344.  an output stream or filter function to handle the output.
  9345.  BUFFER may also be nil, meaning that this process is not associated
  9346.  with any buffer.
  9347. Third arg is name of the host to connect to, or its IP address.
  9348. Fourth arg SERVICE is name of the service desired, or an integer
  9349.  specifying a port number to connect to.
  9350.  
  9351. arguments: (NAME BUFFER HOST SERVICE)
  9352. Fset-process-window-size
  9353. Tell PROCESS that it has logical window size HEIGHT and WIDTH.
  9354.  
  9355. arguments: (PROC HEIGHT WIDTH)
  9356. Fprocess-tty-name
  9357. Return the name of the terminal PROCESS uses, or nil if none.
  9358. This is the terminal that the process itself reads and writes on,
  9359. not the name of the pty that Emacs uses to talk with that terminal.
  9360.  
  9361. arguments: (PROC)
  9362. Fset-process-buffer
  9363. Set buffer associated with PROCESS to BUFFER (a buffer, or nil).
  9364.  
  9365. arguments: (PROC BUFFER)
  9366. Fprocess-buffer
  9367. Return the buffer PROCESS is associated with.
  9368. Output from PROCESS is inserted in this buffer
  9369. unless PROCESS has a filter.
  9370.  
  9371. arguments: (PROC)
  9372. Fprocess-mark
  9373. Return the marker for the end of the last output from PROCESS.
  9374.  
  9375. arguments: (PROC)
  9376. Fset-process-filter
  9377. Give PROCESS the filter function FILTER; nil means no filter.
  9378. t means stop accepting output from the process.
  9379. When a process has a filter, each time it does output
  9380. the entire string of output is passed to the filter.
  9381. The filter gets two arguments: the process and the string of output.
  9382. If the process has a filter, its buffer is not used for output.
  9383.  
  9384. arguments: (PROC FILTER)
  9385. Fprocess-filter
  9386. Return the filter function of PROCESS; nil if none.
  9387. See `set-process-filter' for more info on filter functions.
  9388.  
  9389. arguments: (PROC)
  9390. Fprocess-send-region
  9391. Send current contents of region as input to PROCESS.
  9392. PROCESS may be a process name or an actual process.
  9393. Called from program, takes three arguments, PROCESS, START and END.
  9394. If the region is more than 500 or so characters long,
  9395. it is sent in several bunches.  This may happen even for shorter regions.
  9396. Output from processes can arrive in between bunches.
  9397.  
  9398. arguments: (PROCESS START END)
  9399. Fprocess-send-string
  9400. Send PROCESS the contents of STRING as input.
  9401. PROCESS may be a process name or an actual process.
  9402. Optional arguments FROM and TO specify part of STRING, see `substring'.
  9403. If STRING is more than 500 or so characters long,
  9404. it is sent in several bunches.  This may happen even for shorter strings.
  9405. Output from processes can arrive in between bunches.
  9406.  
  9407. arguments: (PROCESS STRING &optional FROM TO)
  9408. Fprocess-input-coding-system
  9409. Return PROCESS's input coding system.
  9410.  
  9411. arguments: (PROCESS)
  9412. Fprocess-output-coding-system
  9413. Return PROCESS's output coding system.
  9414.  
  9415. arguments: (PROCESS)
  9416. Fprocess-coding-system
  9417. Return a pair of coding-system for decoding and encoding of PROCESS.
  9418.  
  9419. arguments: (PROCESS)
  9420. Fset-process-input-coding-system
  9421. Set PROCESS's input coding system to CODESYS.
  9422.  
  9423. arguments: (PROCESS CODESYS)
  9424. Fset-process-output-coding-system
  9425. Set PROCESS's output coding system to CODESYS.
  9426.  
  9427. arguments: (PROCESS CODESYS)
  9428. Fset-process-coding-system
  9429. Set coding-systems of PROCESS to DECODING and ENCODING.
  9430.  
  9431. arguments: (PROCESS &optional DECODING ENCODING)
  9432. Fset-process-sentinel
  9433. Give PROCESS the sentinel SENTINEL; nil for none.
  9434. The sentinel is called as a function when the process changes state.
  9435. It gets two arguments: the process, and a string describing the change.
  9436.  
  9437. arguments: (PROC SENTINEL)
  9438. Fprocess-sentinel
  9439. Return the sentinel of PROCESS; nil if none.
  9440. See `set-process-sentinel' for more info on sentinels.
  9441.  
  9442. arguments: (PROC)
  9443. Fprocess-status
  9444. Return the status of PROCESS.
  9445. This is a symbol, one of these:
  9446.  
  9447. run    -- for a process that is running.
  9448. stop   -- for a process stopped but continuable.
  9449. exit   -- for a process that has exited.
  9450. signal -- for a process that has got a fatal signal.
  9451. open   -- for a network stream connection that is open.
  9452. closed -- for a network stream connection that is closed.
  9453. nil    -- if arg is a process name and no such process exists.
  9454.  
  9455. PROCESS may be a process, a buffer, the name of a process or buffer, or
  9456. nil, indicating the current buffer's process.
  9457.  
  9458. arguments: (PROC)
  9459. Fprocess-exit-status
  9460. Return the exit status of PROCESS or the signal number that killed it.
  9461. If PROCESS has not yet exited or died, return 0.
  9462.  
  9463. arguments: (PROC)
  9464. Finterrupt-process
  9465. Interrupt process PROCESS.  May be process or name of one.
  9466. Nil or no arg means current buffer's process.
  9467. Second arg CURRENT-GROUP non-nil means send signal to
  9468. the current process-group of the process's controlling terminal
  9469. rather than to the process's own process group.
  9470. If the process is a shell, this means interrupt current subjob
  9471. rather than the shell.
  9472.  
  9473. arguments: (&optional PROCESS CURRENT-GROUP)
  9474. Fkill-process
  9475. Kill process PROCESS.  May be process or name of one.
  9476. See function `interrupt-process' for more details on usage.
  9477.  
  9478. arguments: (&optional PROCESS CURRENT-GROUP)
  9479. Fquit-process
  9480. Send QUIT signal to process PROCESS.  May be process or name of one.
  9481. See function `interrupt-process' for more details on usage.
  9482.  
  9483. arguments: (&optional PROCESS CURRENT-GROUP)
  9484. Fstop-process
  9485. Stop process PROCESS.  May be process or name of one.
  9486. See function `interrupt-process' for more details on usage.
  9487.  
  9488. arguments: (&optional PROCESS CURRENT-GROUP)
  9489. Fcontinue-process
  9490. Continue process PROCESS.  May be process or name of one.
  9491. See function `interrupt-process' for more details on usage.
  9492.  
  9493. arguments: (&optional PROCESS CURRENT-GROUP)
  9494. Fsignal-process
  9495. Send the process with process id PID the signal with code SIGCODE.
  9496. PID must be an integer.  The process need not be a child of this Emacs.
  9497. SIGCODE may be an integer, or a symbol whose name is a signal name.
  9498.  
  9499. arguments: (PID SIGCODE)
  9500. Fprocess-send-eof
  9501. Make PROCESS see end-of-file in its input.
  9502. PROCESS may be a process, a buffer, the name of a process or buffer, or
  9503. nil, indicating the current buffer's process.
  9504. If PROCESS is a network connection, or is a process communicating
  9505. through a pipe (as opposed to a pty), then you cannot send any more
  9506. text to PROCESS after you call this function.
  9507.  
  9508. arguments: (&optional PROCESS)
  9509. Fdelete-process
  9510. Delete PROCESS: kill it and forget about it immediately.
  9511. PROCESS may be a process or the name of one, or a buffer name.
  9512.  
  9513. arguments: (PROC)
  9514. Fprocess-kill-without-query
  9515. Say no query needed if PROCESS is running when Emacs is exited.
  9516. Optional second argument if non-nil says to require a query.
  9517. Value is t if a query was formerly required.
  9518.  
  9519. arguments: (PROC &optional REQUIRE-QUERY-P)
  9520. Fprocess-kill-without-query-p
  9521. Whether PROC will be killed without query if running when emacs is exited.
  9522.  
  9523. arguments: (PROC)
  9524. Vdelete-exited-processes
  9525. *Non-nil means delete processes immediately when they exit.
  9526. nil means don't delete them until `list-processes' is run.Vprocess-connection-type
  9527. Control type of device used to communicate with subprocesses.
  9528. Values are nil to use a pipe, or t or `pty' to use a pty.
  9529. The value has no effect if the system has no ptys or if all ptys are busy:
  9530. then a pipe is used in any case.
  9531. The value takes effect when `start-process' is called.Vnetwork-stream-blocking-port-list
  9532. List of port numbers or port names to set a blocking I/O mode with connection.
  9533. Nil value means to set a default(non-blocking) I/O mode.
  9534. The value takes effect when `open-network-stream-internal' is called.Fstart-profiling
  9535. Start profiling, with profile queries every MICROSECS.
  9536. If MICROSECS is nil or omitted, the value of `default-profiling-interval'
  9537. is used.
  9538.  
  9539. You can retrieve the recorded profiling info using `get-profiling-info'.
  9540.  
  9541. Starting and stopping profiling does not clear the currently recorded
  9542. info.  Thus you can start and stop as many times as you want and everything
  9543. will be properly accumulated.
  9544.  
  9545. arguments: (&optional MICROSECS)
  9546. Fstop-profiling
  9547. Stop profiling.
  9548.  
  9549. arguments: ()
  9550. Fget-profiling-info
  9551. Return the profiling info as an alist.
  9552.  
  9553. arguments: ()
  9554. Fclear-profiling-info
  9555. Clear out the recorded profiling info.
  9556.  
  9557. arguments: ()
  9558. Fprofiling-active-p
  9559. Return non-nil if profiling information is currently being recorded.
  9560.  
  9561. arguments: ()
  9562. Vdefault-profiling-interval
  9563. Default time in microseconds between profiling queries.
  9564. Used when the argument to `start-profiling' is nil or omitted.
  9565. Note that the time in question is CPU time (when the program is executing
  9566. or the kernel is executing on behalf of the program) and not real time.Frange-table-p
  9567. Return non-nil if OBJECT is a range table.
  9568.  
  9569. arguments: (OBJECT)
  9570. Fmake-range-table
  9571. Make a new, empty range table.
  9572. You can manipulate it using `put-range-table', `get-range-table',
  9573. `remove-range-table', and `clear-range-table'.
  9574.  
  9575. arguments: ()
  9576. Fcopy-range-table
  9577. Make a new range table which contains the same values for the same
  9578. ranges as the given table.  The values will not themselves be copied.
  9579.  
  9580. arguments: (OLD-TABLE)
  9581. Fget-range-table
  9582. Find value for position POS in TABLE.
  9583. If there is no corresponding value, return DEFAULT (defaults to nil).
  9584.  
  9585. arguments: (POS TABLE &optional DEFAULT)
  9586. Fput-range-table
  9587. Set the value for range (START, END) to be VAL in TABLE.
  9588.  
  9589. arguments: (START END VAL TABLE)
  9590. Fremove-range-table
  9591. Remove the value for range (START, END) in TABLE.
  9592.  
  9593. arguments: (START END TABLE)
  9594. Fclear-range-table
  9595. Flush TABLE.
  9596.  
  9597. arguments: (TABLE)
  9598. Fmap-range-table
  9599. Map FUNCTION over entries in TABLE, calling it with three args,
  9600. the beginning and end of the range and the corresponding value.
  9601.  
  9602. arguments: (FUNCTION TABLE)
  9603. Fredisplay-echo-area
  9604. Ensure that all minibuffers are correctly showing the echo area.
  9605.  
  9606. arguments: ()
  9607. Fredraw-frame
  9608. Clear frame FRAME and output again what is supposed to appear on it.
  9609. FRAME defaults to the selected frame if omitted.
  9610. Normally, redisplay is preempted as normal if input arrives.  However,
  9611. if optional second arg NO-PREEMPT is non-nil, redisplay will not stop for
  9612. input and is guaranteed to proceed to completion.
  9613.  
  9614. arguments: (&optional FRAME NO-PREEMPT)
  9615. Fredisplay-frame
  9616. Ensure that FRAME's contents are correctly displayed.
  9617. This differs from `redraw-frame' in that it only redraws what needs to
  9618. be updated, as opposed to unconditionally clearing and redrawing
  9619. the frame.
  9620. FRAME defaults to the selected frame if omitted.
  9621. Normally, redisplay is preempted as normal if input arrives.  However,
  9622. if optional second arg NO-PREEMPT is non-nil, redisplay will not stop for
  9623. input and is guaranteed to proceed to completion.
  9624.  
  9625. arguments: (&optional FRAME NO-PREEMPT)
  9626. Fredraw-device
  9627. Clear device DEVICE and output again what is supposed to appear on it.
  9628. DEVICE defaults to the selected device if omitted.
  9629. Normally, redisplay is preempted as normal if input arrives.  However,
  9630. if optional second arg NO-PREEMPT is non-nil, redisplay will not stop for
  9631. input and is guaranteed to proceed to completion.
  9632.  
  9633. arguments: (&optional DEVICE NO-PREEMPT)
  9634. Fredisplay-device
  9635. Ensure that DEVICE's contents are correctly displayed.
  9636. This differs from `redraw-device' in that it only redraws what needs to
  9637. be updated, as opposed to unconditionally clearing and redrawing
  9638. the device.
  9639. DEVICE defaults to the selected device if omitted.
  9640. Normally, redisplay is preempted as normal if input arrives.  However,
  9641. if optional second arg NO-PREEMPT is non-nil, redisplay will not stop for
  9642. input and is guaranteed to proceed to completion.
  9643.  
  9644. arguments: (&optional DEVICE NO-PREEMPT)
  9645. Fredraw-modeline
  9646. Force the modeline of the current buffer to be redisplayed.
  9647. With optional non-nil ALL, force redisplay of all modelines.
  9648.  
  9649. arguments: (&optional ALL)
  9650. Fforce-cursor-redisplay
  9651. Force an immediate update of the cursor on FRAME.
  9652. FRAME defaults to the selected frame if omitted.
  9653.  
  9654. arguments: (&optional FRAME)
  9655. Vredisplay-cache-adjustment
  9656. (Temporary) Setting this will impact the performance of the internal
  9657. line start cache.Vpixel-vertical-clip-threshold
  9658. Minimum pixel height for clipped bottom display line.
  9659. A clipped line shorter than this won't be displayed.Vpixel-horizontal-clip-threshold
  9660. Minimum visible area for clipped glyphs at right boundary.
  9661. Clipped glyphs shorter than this won't be displayed.
  9662. Only pixmap glyph instances are currently allowed to be clipped.Vglobal-mode-string
  9663. String displayed by modeline-format's "%m" specification.Voverlay-arrow-position
  9664. Marker for where to display an arrow on top of the buffer text.
  9665. This must be the beginning of a line in order to work.
  9666. See also `overlay-arrow-string'.Voverlay-arrow-string
  9667. String to display as an arrow.  See also `overlay-arrow-position'.Vscroll-step
  9668. *The number of lines to try scrolling a window by when point moves out.
  9669. If that fails to bring point back on frame, point is centered instead.
  9670. If this is zero, point is always centered after it moves off screen.Vscroll-conservatively
  9671. *Scroll up to this many lines, to bring point back on screen.Vtruncate-partial-width-windows
  9672. *Non-nil means truncate lines in all windows less than full frame wide.Vvisible-bell
  9673. *Non-nil means try to flash the frame to represent a bell.Vno-redraw-on-reenter
  9674. *Non-nil means no need to redraw entire frame after suspending.
  9675. A non-nil value is useful if the terminal can automatically preserve
  9676. Emacs's frame display when you reenter Emacs.
  9677. It is up to you to set this variable if your terminal can do that.Vwindow-system
  9678. A symbol naming the window-system under which Emacs is running,
  9679. such as `x', or nil if emacs is running on an ordinary terminal.
  9680.  
  9681. Do not use this variable, except for GNU Emacs compatibility, as it
  9682. gives wrong values in a multi-device environment.  Use `console-type'
  9683. instead.Vinitial-window-system
  9684. DON'T TOUCHVcursor-in-echo-area
  9685. Non-nil means put cursor in minibuffer, at end of any message there.Vbar-cursor
  9686. Use vertical bar cursor if non-nil.  If t width is 1 pixel, otherwise 2.Vdisplay-warning-tick
  9687. Bump this to tell the C code to call `display-warning-buffer'
  9688. at next redisplay.  You should not normally change this; the function
  9689. `display-warning' automatically does this at appropriate times.Vinhibit-warning-display
  9690. Non-nil means inhibit display of warning messages.
  9691. You should *bind* this, not set it.  Any pending warning messages
  9692. will be displayed when the binding no longer applies.Vwindow-size-change-functions
  9693. Not currently implemented.
  9694. Functions called before redisplay, if window sizes have changed.
  9695. The value should be a list of functions that take one argument.
  9696. Just before redisplay, for each frame, if any of its windows have changed
  9697. size since the last redisplay, or have been split or deleted,
  9698. all the functions in the list are called, with the frame as argument.Vwindow-scroll-functions
  9699. Not currently implemented.
  9700. Functions to call before redisplaying a window with scrolling.
  9701. Each function is called with two arguments, the window
  9702. and its new display-start position.  Note that the value of `window-end'
  9703. is not valid when these functions are called.Vredisplay-end-trigger-functions
  9704. See `set-window-redisplay-end-trigger'.Vcolumn-number-start-at-one
  9705. *Non-nil means column display number starts at 1.Vleft-margin-width
  9706. *Width of left margin.
  9707. This is a specifier; use `set-specifier' to change it.Vright-margin-width
  9708. *Width of right margin.
  9709. This is a specifier; use `set-specifier' to change it.Vminimum-line-ascent
  9710. *Minimum ascent height of lines.
  9711. This is a specifier; use `set-specifier' to change it.Vminimum-line-descent
  9712. *Minimum descent height of lines.
  9713. This is a specifier; use `set-specifier' to change it.Vuse-left-overflow
  9714. *Non-nil means use the left outside margin as extra whitespace when
  9715. displaying 'whitespace or 'inside-margin glyphs.
  9716. This is a specifier; use `set-specifier' to change it.Vuse-right-overflow
  9717. *Non-nil means use the right outside margin as extra whitespace when
  9718. displaying 'whitespace or 'inside-margin glyphs.
  9719. This is a specifier; use `set-specifier' to change it.Vtext-cursor-visible-p
  9720. *Non-nil means the text cursor is visible (this is usually the case).
  9721. This is a specifier; use `set-specifier' to change it.Flooking-at
  9722. Return t if text after point matches regular expression REGEXP.
  9723. This function modifies the match data that `match-beginning',
  9724. `match-end' and `match-data' access; save and restore the match
  9725. data if you want to preserve them.
  9726.  
  9727. Optional argument BUFFER defaults to the current buffer.
  9728.  
  9729. arguments: (REGEXP &optional BUFFER)
  9730. Fposix-looking-at
  9731. Return t if text after point matches regular expression REGEXP.
  9732. Find the longest match, in accord with Posix regular expression rules.
  9733. This function modifies the match data that `match-beginning',
  9734. `match-end' and `match-data' access; save and restore the match
  9735. data if you want to preserve them.
  9736.  
  9737. Optional argument BUFFER defaults to the current buffer.
  9738.  
  9739. arguments: (REGEXP &optional BUFFER)
  9740. Fstring-match
  9741. Return index of start of first match for REGEXP in STRING, or nil.
  9742. If third arg START is non-nil, start search at that index in STRING.
  9743. For index of first char beyond the match, do (match-end 0).
  9744. `match-end' and `match-beginning' also give indices of substrings
  9745. matched by parenthesis constructs in the pattern.
  9746.  
  9747. Optional arg BUFFER controls how case folding is done (according to
  9748. the value of `case-fold-search' in that buffer and that buffer's case
  9749. tables) and defaults to the current buffer.
  9750.  
  9751. arguments: (REGEXP STRING &optional START BUFFER)
  9752. Fposix-string-match
  9753. Return index of start of first match for REGEXP in STRING, or nil.
  9754. Find the longest match, in accord with Posix regular expression rules.
  9755. If third arg START is non-nil, start search at that index in STRING.
  9756. For index of first char beyond the match, do (match-end 0).
  9757. `match-end' and `match-beginning' also give indices of substrings
  9758. matched by parenthesis constructs in the pattern.
  9759.  
  9760. Optional arg BUFFER controls how case folding is done (according to
  9761. the value of `case-fold-search' in that buffer and that buffer's case
  9762. tables) and defaults to the current buffer.
  9763.  
  9764. arguments: (REGEXP STRING &optional START BUFFER)
  9765. Fskip-chars-forward
  9766. Move point forward, stopping before a char not in STRING, or at pos LIM.
  9767. STRING is like the inside of a `[...]' in a regular expression
  9768. except that `]' is never special and `\' quotes `^', `-' or `\'.
  9769. Thus, with arg "a-zA-Z", this skips letters stopping before first nonletter.
  9770. With arg "^a-zA-Z", skips nonletters stopping before first letter.
  9771. Returns the distance traveled, either zero or positive.
  9772.  
  9773. Optional argument BUFFER defaults to the current buffer.
  9774.  
  9775. arguments: (STRING &optional LIM BUFFER)
  9776. Fskip-chars-backward
  9777. Move point backward, stopping after a char not in STRING, or at pos LIM.
  9778. See `skip-chars-forward' for details.
  9779. Returns the distance traveled, either zero or negative.
  9780.  
  9781. Optional argument BUFFER defaults to the current buffer.
  9782.  
  9783. arguments: (STRING &optional LIM BUFFER)
  9784. Fskip-syntax-forward
  9785. Move point forward across chars in specified syntax classes.
  9786. SYNTAX is a string of syntax code characters.
  9787. Stop before a char whose syntax is not in SYNTAX, or at position LIM.
  9788. If SYNTAX starts with ^, skip characters whose syntax is NOT in SYNTAX.
  9789. This function returns the distance traveled, either zero or positive.
  9790.  
  9791. Optional argument BUFFER defaults to the current buffer.
  9792.  
  9793. arguments: (SYNTAX &optional LIM BUFFER)
  9794. Fskip-syntax-backward
  9795. Move point backward across chars in specified syntax classes.
  9796. SYNTAX is a string of syntax code characters.
  9797. Stop on reaching a char whose syntax is not in SYNTAX, or at position LIM.
  9798. If SYNTAX starts with ^, skip characters whose syntax is NOT in SYNTAX.
  9799. This function returns the distance traveled, either zero or negative.
  9800.  
  9801. Optional argument BUFFER defaults to the current buffer.
  9802.  
  9803. arguments: (SYNTAX &optional LIM BUFFER)
  9804. Fsearch-backward
  9805. Search backward from point for STRING.
  9806. Set point to the beginning of the occurrence found, and return point.
  9807. An optional second argument bounds the search; it is a buffer position.
  9808. The match found must not extend before that position.
  9809. Optional third argument, if t, means if fail just return nil (no error).
  9810.  If not nil and not t, position at limit of search and return nil.
  9811. Optional fourth argument is repeat count--search for successive occurrences.
  9812. Optional fifth argument BUFFER specifies the buffer to search in and
  9813.  defaults to the current buffer.
  9814. See also the functions `match-beginning', `match-end' and `replace-match'.
  9815.  
  9816. arguments: (STRING &optional BOUND NO-ERROR COUNT BUFFER)
  9817. Fsearch-forward
  9818. Search forward from point for STRING.
  9819. Set point to the end of the occurrence found, and return point.
  9820. An optional second argument bounds the search; it is a buffer position.
  9821. The match found must not extend after that position.  nil is equivalent
  9822.   to (point-max).
  9823. Optional third argument, if t, means if fail just return nil (no error).
  9824.   If not nil and not t, move to limit of search and return nil.
  9825. Optional fourth argument is repeat count--search for successive occurrences.
  9826. Optional fifth argument BUFFER specifies the buffer to search in and
  9827.  defaults to the current buffer.
  9828. See also the functions `match-beginning', `match-end' and `replace-match'.
  9829.  
  9830. arguments: (STRING &optional BOUND NO-ERROR COUNT BUFFER)
  9831. Fword-search-backward
  9832. Search backward from point for STRING, ignoring differences in punctuation.
  9833. Set point to the beginning of the occurrence found, and return point.
  9834. An optional second argument bounds the search; it is a buffer position.
  9835. The match found must not extend before that position.
  9836. Optional third argument, if t, means if fail just return nil (no error).
  9837.   If not nil and not t, move to limit of search and return nil.
  9838. Optional fourth argument is repeat count--search for successive occurrences.
  9839. Optional fifth argument BUFFER specifies the buffer to search in and
  9840.  defaults to the current buffer.
  9841.  
  9842. arguments: (STRING &optional BOUND NO-ERROR COUNT BUFFER)
  9843. Fword-search-forward
  9844. Search forward from point for STRING, ignoring differences in punctuation.
  9845. Set point to the end of the occurrence found, and return point.
  9846. An optional second argument bounds the search; it is a buffer position.
  9847. The match found must not extend after that position.
  9848. Optional third argument, if t, means if fail just return nil (no error).
  9849.   If not nil and not t, move to limit of search and return nil.
  9850. Optional fourth argument is repeat count--search for successive occurrences.
  9851. Optional fifth argument BUFFER specifies the buffer to search in and
  9852.  defaults to the current buffer.
  9853.  
  9854. arguments: (STRING &optional BOUND NO-ERROR COUNT BUFFER)
  9855. Fre-search-backward
  9856. Search backward from point for match for regular expression REGEXP.
  9857. Set point to the beginning of the match, and return point.
  9858. The match found is the one starting last in the buffer
  9859. and yet ending before the origin of the search.
  9860. An optional second argument bounds the search; it is a buffer position.
  9861. The match found must start at or after that position.
  9862. Optional third argument, if t, means if fail just return nil (no error).
  9863.   If not nil and not t, move to limit of search and return nil.
  9864. Optional fourth argument is repeat count--search for successive occurrences.
  9865. Optional fifth argument BUFFER specifies the buffer to search in and
  9866.  defaults to the current buffer.
  9867. See also the functions `match-beginning', `match-end' and `replace-match'.
  9868.  
  9869. arguments: (REGEXP &optional BOUND NO-ERROR COUNT BUFFER)
  9870. Fre-search-forward
  9871. Search forward from point for regular expression REGEXP.
  9872. Set point to the end of the occurrence found, and return point.
  9873. An optional second argument bounds the search; it is a buffer position.
  9874. The match found must not extend after that position.
  9875. Optional third argument, if t, means if fail just return nil (no error).
  9876.   If not nil and not t, move to limit of search and return nil.
  9877. Optional fourth argument is repeat count--search for successive occurrences.
  9878. Optional fifth argument BUFFER specifies the buffer to search in and
  9879.  defaults to the current buffer.
  9880. See also the functions `match-beginning', `match-end' and `replace-match'.
  9881.  
  9882. arguments: (REGEXP &optional BOUND NO-ERROR COUNT BUFFER)
  9883. Fposix-search-backward
  9884. Search backward from point for match for regular expression REGEXP.
  9885. Find the longest match in accord with Posix regular expression rules.
  9886. Set point to the beginning of the match, and return point.
  9887. The match found is the one starting last in the buffer
  9888. and yet ending before the origin of the search.
  9889. An optional second argument bounds the search; it is a buffer position.
  9890. The match found must start at or after that position.
  9891. Optional third argument, if t, means if fail just return nil (no error).
  9892.   If not nil and not t, move to limit of search and return nil.
  9893. Optional fourth argument is repeat count--search for successive occurrences.
  9894. Optional fifth argument BUFFER specifies the buffer to search in and
  9895.  defaults to the current buffer.
  9896. See also the functions `match-beginning', `match-end' and `replace-match'.
  9897.  
  9898. arguments: (REGEXP &optional BOUND NO-ERROR COUNT BUFFER)
  9899. Fposix-search-forward
  9900. Search forward from point for regular expression REGEXP.
  9901. Find the longest match in accord with Posix regular expression rules.
  9902. Set point to the end of the occurrence found, and return point.
  9903. An optional second argument bounds the search; it is a buffer position.
  9904. The match found must not extend after that position.
  9905. Optional third argument, if t, means if fail just return nil (no error).
  9906.   If not nil and not t, move to limit of search and return nil.
  9907. Optional fourth argument is repeat count--search for successive occurrences.
  9908. Optional fifth argument BUFFER specifies the buffer to search in and
  9909.  defaults to the current buffer.
  9910. See also the functions `match-beginning', `match-end' and `replace-match'.
  9911.  
  9912. arguments: (REGEXP &optional BOUND NO-ERROR COUNT BUFFER)
  9913. Freplace-match
  9914. Replace text matched by last search with NEWTEXT.
  9915. If second arg FIXEDCASE is non-nil, do not alter case of replacement text.
  9916. Otherwise maybe capitalize the whole text, or maybe just word initials,
  9917. based on the replaced text.
  9918. If the replaced text has only capital letters
  9919. and has at least one multiletter word, convert NEWTEXT to all caps.
  9920. If the replaced text has at least one word starting with a capital letter,
  9921. then capitalize each word in NEWTEXT.
  9922.  
  9923. If third arg LITERAL is non-nil, insert NEWTEXT literally.
  9924. Otherwise treat `\' as special:
  9925.   `\&' in NEWTEXT means substitute original matched text.
  9926.   `\N' means substitute what matched the Nth `\(...\)'.
  9927.        If Nth parens didn't match, substitute nothing.
  9928.   `\\' means insert one `\'.
  9929.   `\u' means upcase the next character.
  9930.   `\l' means downcase the next character.
  9931.   `\U' means begin upcasing all following characters.
  9932.   `\L' means begin downcasing all following characters.
  9933.   `\E' means terminate the effect of any `\U' or `\L'.
  9934.   Case changes made with `\u', `\l', `\U', and `\L' override
  9935.   all other case changes that may be made in the replaced text.
  9936. FIXEDCASE and LITERAL are optional arguments.
  9937. Leaves point at end of replacement text.
  9938.  
  9939. The optional fourth argument STRING can be a string to modify.
  9940. In that case, this function creates and returns a new string
  9941. which is made by replacing the part of STRING that was matched.
  9942. When fourth argument is a string, fifth argument STRBUFFER specifies
  9943. the buffer to be used for syntax-table and case-table lookup and
  9944. defaults to the current buffer. (When fourth argument is not a string,
  9945. the buffer that the match occurred in has automatically been remembered
  9946. and you do not need to specify it.)
  9947.  
  9948. arguments: (NEWTEXT &optional FIXEDCASE LITERAL STRING STRBUFFER)
  9949. Fmatch-beginning
  9950. Return position of start of text matched by last regexp search.
  9951. NUM, specifies which parenthesized expression in the last regexp.
  9952.  Value is nil if NUMth pair didn't match, or there were less than NUM pairs.
  9953. Zero means the entire text matched by the whole regexp or whole string.
  9954.  
  9955. arguments: (NUM)
  9956. Fmatch-end
  9957. Return position of end of text matched by last regexp search.
  9958. NUM specifies which parenthesized expression in the last regexp.
  9959.  Value is nil if NUMth pair didn't match, or there were less than NUM pairs.
  9960. Zero means the entire text matched by the whole regexp or whole string.
  9961.  
  9962. arguments: (NUM)
  9963. Fmatch-data
  9964. Return a list containing all info on what the last regexp search matched.
  9965. Element 2N is `(match-beginning N)'; element 2N + 1 is `(match-end N)'.
  9966. All the elements are markers or nil (nil if the Nth pair didn't match)
  9967. if the last match was on a buffer; integers or nil if a string was matched.
  9968. Use `store-match-data' to reinstate the data in this list.
  9969.  
  9970. arguments: ()
  9971. Fstore-match-data
  9972. Set internal data on last search match from elements of LIST.
  9973. LIST should have been created by calling `match-data' previously.
  9974.  
  9975. arguments: (LIST)
  9976. Fregexp-quote
  9977. Return a regexp string which matches exactly STRING and nothing else.
  9978.  
  9979. arguments: (STR)
  9980. Fset-word-regexp
  9981. Set the regexp to be used to match a word in regular-expression searching.
  9982. #### Not yet implemented.  Currently does nothing.
  9983. #### Do not use this yet.  Its calling interface is likely to change.
  9984.  
  9985. arguments: (REGEXP)
  9986. Vforward-word-regexp
  9987. *Regular expression to be used in `forward-word'.
  9988. #### Not yet implemented.Vbackward-word-regexp
  9989. *Regular expression to be used in `backward-word'.
  9990. #### Not yet implemented.Fwaiting-for-user-input-p
  9991. Return non-nil if XEmacs is waiting for input from the user.
  9992. This is intended for use by asynchronous timeout callbacks and by
  9993. asynchronous process output filters and sentinels (not yet implemented
  9994. in XEmacs).  It will always be nil if XEmacs is not inside of
  9995. an asynchronout timeout or process callback.
  9996.  
  9997. arguments: ()
  9998. Fplay-sound-file
  9999. Play the named sound file on DEVICE's speaker at the specified volume
  10000. (0-100, default specified by the `bell-volume' variable).
  10001. The sound file must be in the Sun/NeXT U-LAW format except under Linux
  10002. where WAV files are also supported.
  10003.   DEVICE defaults to the selected device.
  10004.  
  10005. arguments: (FILE &optional VOLUME DEVICE)
  10006. Fplay-sound
  10007. Play a sound of the provided type.
  10008. See the variable `sound-alist'.
  10009.  
  10010. arguments: (SOUND &optional VOLUME DEVICE)
  10011. Fdevice-sound-enabled-p
  10012. Return T iff DEVICE is able to play sound.  Defaults to selected device.
  10013.  
  10014. arguments: (&optional DEVICE)
  10015. Fding
  10016. Beep, or flash the frame.
  10017. Also, unless an argument is given,
  10018. terminate any keyboard macro currently executing.
  10019. When called from lisp, the second argument is what sound to make, and
  10020. the third argument is the device to make it in (defaults to the selected
  10021. device).
  10022.  
  10023. arguments: (&optional ARG SOUND DEVICE)
  10024. Fwait-for-sounds
  10025. Wait for all sounds to finish playing on DEVICE.
  10026.  
  10027. arguments: (&optional DEVICE)
  10028. Fconnected-to-nas-p
  10029. t if connected to NAS server for sounds on DEVICE.
  10030.  
  10031. arguments: (&optional DEVICE)
  10032. Vbell-volume
  10033. *How loud to be, from 0 to 100.Vsound-alist
  10034. An alist associating names with sounds.
  10035. When `beep' or `ding' is called with one of the name symbols, the associated
  10036. sound will be generated instead of the standard beep.
  10037.  
  10038. Each element of `sound-alist' is a list describing a sound.
  10039. The first element of the list is the name of the sound being defined.
  10040. Subsequent elements of the list are alternating keyword/value pairs:
  10041.  
  10042.    Keyword:    Value:
  10043.    -------    -----
  10044.    sound    A string of raw sound data, or the name of another sound to
  10045.         play.   The symbol `t' here means use the default X beep.
  10046.    volume    An integer from 0-100, defaulting to `bell-volume'
  10047.    pitch    If using the default X beep, the pitch (Hz) to generate.
  10048.    duration    If using the default X beep, the duration (milliseconds).
  10049.  
  10050. For compatibility, elements of `sound-alist' may also be:
  10051.  
  10052.    ( sound-name . <sound> )
  10053.    ( sound-name <volume> <sound> )
  10054.  
  10055. You should probably add things to this list by calling the function
  10056. load-sound-file.
  10057.  
  10058. Caveats:
  10059.  - You can only play audio data if running on the console screen of a
  10060.    Sun SparcStation, SGI, or HP9000s700.
  10061.  
  10062.  - The pitch, duration, and volume options are available everywhere, but
  10063.    many X servers ignore the `pitch' option.
  10064.  
  10065. The following beep-types are used by emacs itself:
  10066.  
  10067.     auto-save-error    when an auto-save does not succeed
  10068.     command-error    when the emacs command loop catches an error
  10069.     undefined-key    when you type a key that is undefined
  10070.     undefined-click    when you use an undefined mouse-click combination
  10071.     no-completion    during completing-read
  10072.     y-or-n-p        when you type something other than 'y' or 'n'
  10073.     yes-or-no-p      when you type something other than 'yes' or 'no'
  10074.     default        used when nothing else is appropriate.
  10075.  
  10076. Other lisp packages may use other beep types, but these are the ones that
  10077. the C kernel of Emacs uses.Vsynchronous-sounds
  10078. Play sounds synchronously, if non-nil.
  10079. Only applies if NAS is used and supports asynchronous playing
  10080. of sounds.  Otherwise, sounds are always played synchronously.Vnative-sound-only-on-console
  10081. Non-nil value means play sounds only if XEmacs is running
  10082. on the system console.
  10083. Nil means always always play sounds, even if running on a non-console tty
  10084. or a secondary X display.
  10085.  
  10086. This variable only applies to native sound support.Fvalid-specifier-type-p
  10087. Given a SPECIFIER-TYPE, return non-nil if it is valid.
  10088. Valid types are 'generic, 'integer, boolean, 'color, 'font, 'image,
  10089. 'face-boolean, and 'toolbar.
  10090.  
  10091. arguments: (SPECIFIER-TYPE)
  10092. Fspecifier-type-list
  10093. Return a list of valid specifier types.
  10094.  
  10095. arguments: ()
  10096. Fmake-specifier
  10097. Create a new specifier.
  10098.  
  10099. A specifier is an object that can be used to keep track of a property
  10100. whose value can be per-buffer, per-window, per-frame, or per-device,
  10101. and can further be restricted to a particular console-type or device-class.
  10102. Specifiers are used, for example, for the various built-in properties of a
  10103. face; this allows a face to have different values in different frames,
  10104. buffers, etc.  For more information, see `specifier-instance',
  10105. `specifier-specs', and `add-spec-to-specifier'; or, for a detailed
  10106. description of specifiers, including how they are instantiated over a
  10107. particular domain (i.e. how their value in that domain is determined),
  10108. see the chapter on specifiers in the XEmacs Lisp Reference Manual.
  10109.  
  10110. TYPE specifies the particular type of specifier, and should be one of
  10111. the symbols 'generic, 'integer, 'boolean, 'color, 'font, 'image,
  10112. 'face-boolean, or 'toolbar.
  10113.  
  10114. For more information on particular types of specifiers, see the functions
  10115. `generic-specifier-p', `integer-specifier-p', `boolean-specifier-p',
  10116. `color-specifier-p', `font-specifier-p', `image-specifier-p',
  10117. `face-boolean-specifier-p', and `toolbar-specifier-p'.
  10118.  
  10119. arguments: (TYPE)
  10120. Fspecifierp
  10121. Return non-nil if OBJECT is a specifier.
  10122.  
  10123. A specifier is an object that can be used to keep track of a property
  10124. whose value can be per-buffer, per-window, per-frame, or per-device,
  10125. and can further be restricted to a particular console-type or device-class.
  10126. See `make-specifier'.
  10127.  
  10128. arguments: (OBJECT)
  10129. Fspecifier-type
  10130. Return the type of SPECIFIER.
  10131.  
  10132. arguments: (SPECIFIER)
  10133. Fvalid-specifier-locale-p
  10134. Return non-nil if LOCALE is a valid specifier locale.
  10135. Valid locales are a device, a frame, a window, a buffer, and 'global.
  10136. (nil is not valid.)
  10137.  
  10138. arguments: (LOCALE)
  10139. Fvalid-specifier-domain-p
  10140. Return non-nil if DOMAIN is a valid specifier domain.
  10141. A domain is used to instance a specifier (i.e. determine the specifier's
  10142. value in that domain).  Valid domains are a window, frame, or device.
  10143. (nil is not valid.)
  10144.  
  10145. arguments: (DOMAIN)
  10146. Fvalid-specifier-locale-type-p
  10147. Given a specifier LOCALE-TYPE, return non-nil if it is valid.
  10148. Valid locale types are 'global, 'device, 'frame, 'window, and 'buffer.
  10149. (Note, however, that in functions that accept either a locale or a locale
  10150. type, 'global is considered an individual locale.)
  10151.  
  10152. arguments: (LOCALE-TYPE)
  10153. Fspecifier-locale-type-from-locale
  10154. Given a specifier LOCALE, return its type.
  10155.  
  10156. arguments: (LOCALE)
  10157. Fvalid-specifier-tag-p
  10158. Return non-nil if TAG is a valid specifier tag.
  10159. See also `valid-specifier-tag-set-p'.
  10160.  
  10161. arguments: (TAG)
  10162. Fvalid-specifier-tag-set-p
  10163. Return non-nil if TAG-SET is a valid specifier tag set.
  10164.  
  10165. A specifier tag set is an entity that is attached to an instantiator
  10166. and can be used to restrict the scope of that instantiator to a
  10167. particular device class or device type and/or to mark instantiators
  10168. added by a particular package so that they can be later removed.
  10169.  
  10170. A specifier tag set consists of a list of zero of more specifier tags,
  10171. each of which is a symbol that is recognized by XEmacs as a tag.
  10172. (The valid device types and device classes are always tags, as are
  10173. any tags defined by `define-specifier-tag'.) It is called a "tag set"
  10174. (as opposed to a list) because the order of the tags or the number of
  10175. times a particular tag occurs does not matter.
  10176.  
  10177. Each tag has a predicate associated with it, which specifies whether
  10178. that tag applies to a particular device.  The tags which are device types
  10179. and classes match devices of that type or class.  User-defined tags can
  10180. have any predicate, or none (meaning that all devices match).  When
  10181. attempting to instance a specifier, a particular instantiator is only
  10182. considered if the device of the domain being instanced over matches
  10183. all tags in the tag set attached to that instantiator.
  10184.  
  10185. Most of the time, a tag set is not specified, and the instantiator
  10186. gets a null tag set, which matches all devices.
  10187.  
  10188. arguments: (TAG-SET)
  10189. Fcanonicalize-tag-set
  10190. Canonicalize the given tag set.
  10191. Two canonicalized tag sets can be compared with `equal' to see if they
  10192. represent the same tag set. (Specifically, canonicalizing involves
  10193. sorting by symbol name and removing duplicates.)
  10194.  
  10195. arguments: (TAG-SET)
  10196. Fdevice-matches-specifier-tag-set-p
  10197. Return non-nil if DEVICE matches specifier tag set TAG-SET.
  10198. This means that DEVICE matches each tag in the tag set. (Every
  10199. tag recognized by XEmacs has a predicate associated with it that
  10200. specifies which devices match it.)
  10201.  
  10202. arguments: (DEVICE TAG-SET)
  10203. Fdefine-specifier-tag
  10204. Define a new specifier tag.
  10205. If PREDICATE is specified, it should be a function of one argument
  10206. (a device) that specifies whether the tag matches that particular
  10207. device.  If PREDICATE is omitted, the tag matches all devices.
  10208.  
  10209. You can redefine an existing user-defined specifier tag.  However,
  10210. you cannot redefine the built-in specifier tags (the device types
  10211. and classes) or the symbols nil, t, 'all, or 'global.
  10212.  
  10213. arguments: (TAG &optional PREDICATE)
  10214. Fdevice-matching-specifier-tag-list
  10215. Return a list of all specifier tags matching DEVICE.
  10216. DEVICE defaults to the selected device if omitted.
  10217.  
  10218. arguments: (&optional DEVICE)
  10219. Fspecifier-tag-list
  10220. Return a list of all currently-defined specifier tags.
  10221. This includes the built-in ones (the device types and classes).
  10222.  
  10223. arguments: ()
  10224. Fspecifier-tag-predicate
  10225. Return the predicate for the given specifier tag.
  10226.  
  10227. arguments: (TAG)
  10228. Fcheck-valid-instantiator
  10229. Signal an error if INSTANTIATOR is invalid for SPECIFIER-TYPE.
  10230.  
  10231. arguments: (INSTANTIATOR SPECIFIER-TYPE)
  10232. Fvalid-instantiator-p
  10233. Return non-nil if INSTANTIATOR is valid for SPECIFIER-TYPE.
  10234.  
  10235. arguments: (INSTANTIATOR SPECIFIER-TYPE)
  10236. Fcheck-valid-inst-list
  10237. Signal an error if INST-LIST is invalid for specifier type TYPE.
  10238.  
  10239. arguments: (INST-LIST TYPE)
  10240. Fvalid-inst-list-p
  10241. Return non-nil if INST-LIST is valid for specifier type TYPE.
  10242.  
  10243. arguments: (INST-LIST TYPE)
  10244. Fcheck-valid-spec-list
  10245. Signal an error if SPEC-LIST is invalid for specifier type TYPE.
  10246.  
  10247. arguments: (SPEC-LIST TYPE)
  10248. Fvalid-spec-list-p
  10249. Return non-nil if SPEC-LIST is valid for specifier type TYPE.
  10250.  
  10251. arguments: (SPEC-LIST TYPE)
  10252. Fadd-spec-to-specifier
  10253. Add a specification to SPECIFIER.
  10254. The specification maps from LOCALE (which should be a buffer, window,
  10255. frame, device, or 'global, and defaults to 'global) to INSTANTIATOR,
  10256. whose allowed values depend on the type of the specifier.  Optional
  10257. argument TAG-SET limits the instantiator to apply only to the specified
  10258. tag set, which should be a list of tags all of which must match the
  10259. device being instantiated over (tags are a device type, a device class,
  10260. or tags defined with `define-specifier-tag').  Specifying a single
  10261. symbol for TAG-SET is equivalent to specifying a one-element list
  10262. containing that symbol.  Optional argument HOW-TO-ADD specifies what to
  10263. do if there are already specifications in the specifier.
  10264. It should be one of
  10265.  
  10266.   'prepend        Put at the beginning of the current list of
  10267.             instantiators for LOCALE.
  10268.   'append        Add to the end of the current list of
  10269.             instantiators for LOCALE.
  10270.   'remove-tag-set-prepend (this is the default)
  10271.             Remove any existing instantiators whose tag set is
  10272.             the same as TAG-SET; then put the new instantiator
  10273.             at the beginning of the current list. ("Same tag
  10274.             set" means that they contain the same elements.
  10275.             The order may be different.)
  10276.   'remove-tag-set-append
  10277.             Remove any existing instantiators whose tag set is
  10278.             the same as TAG-SET; then put the new instantiator
  10279.             at the end of the current list.
  10280.   'remove-locale    Remove all previous instantiators for this locale
  10281.             before adding the new spec.
  10282.   'remove-locale-type    Remove all specifications for all locales of the
  10283.             same type as LOCALE (this includes LOCALE itself)
  10284.             before adding the new spec.
  10285.   'remove-all        Remove all specifications from the specifier
  10286.             before adding the new spec.
  10287.  
  10288. You can retrieve the specifications for a particular locale or locale type
  10289. with the function `specifier-spec-list' or `specifier-specs'.
  10290.  
  10291. arguments: (SPECIFIER INSTANTIATOR &optional LOCALE TAG-SET HOW-TO-ADD)
  10292. Fadd-spec-list-to-specifier
  10293. Add a spec-list (a list of specifications) to SPECIFIER.
  10294. The format of a spec-list is
  10295.  
  10296.   ((LOCALE (TAG-SET . INSTANTIATOR) ...) ...)
  10297.  
  10298. where
  10299.   LOCALE := a buffer, a window, a frame, a device, or 'global
  10300.   TAG-SET := an unordered list of zero or more TAGS, each of which
  10301.              is a symbol
  10302.   TAG := a device class (see `valid-device-class-p'), a device type
  10303.          (see `valid-console-type-p'), or a tag defined with
  10304.          `define-specifier-tag'
  10305.   INSTANTIATOR := format determined by the type of specifier
  10306.  
  10307. The pair (TAG-SET . INSTANTIATOR) is called an `inst-pair'.
  10308. A list of inst-pairs is called an `inst-list'.
  10309. The pair (LOCALE . INST-LIST) is called a `specification' or `spec'.
  10310. A spec-list, then, can be viewed as a list of specifications.
  10311.  
  10312. HOW-TO-ADD specifies how to combine the new specifications with
  10313. the existing ones, and has the same semantics as for
  10314. `add-spec-to-specifier'.
  10315.  
  10316. In many circumstances, the higher-level function `set-specifier' is
  10317. more convenient and should be used instead.
  10318.  
  10319. arguments: (SPECIFIER SPEC-LIST &optional HOW-TO-ADD)
  10320. Fspecifier-spec-list
  10321. Return the spec-list of specifications for SPECIFIER in LOCALE.
  10322.  
  10323. If LOCALE is a particular locale (a buffer, window, frame, device,
  10324. or 'global), a spec-list consisting of the specification for that
  10325. locale will be returned.
  10326.  
  10327. If LOCALE is a locale type (i.e. 'buffer, 'window, 'frame, or 'device),
  10328. a spec-list of the specifications for all locales of that type will be
  10329. returned.
  10330.  
  10331. If LOCALE is nil or 'all, a spec-list of all specifications in SPECIFIER
  10332. will be returned.
  10333.  
  10334. LOCALE can also be a list of locales, locale types, and/or 'all; the
  10335. result is as if `specifier-spec-list' were called on each element of the
  10336. list and the results concatenated together.
  10337.  
  10338. Only instantiators where TAG-SET (a list of zero or more tags) is a
  10339. subset of (or possibly equal to) the instantiator's tag set are returned.
  10340. (The default value of nil is a subset of all tag sets, so in this case
  10341. no instantiators will be screened out.) If EXACT-P is non-nil, however,
  10342. TAG-SET must be equal to an instantiator's tag set for the instantiator
  10343. to be returned.
  10344.  
  10345. arguments: (SPECIFIER &optional LOCALE TAG-SET EXACT-P)
  10346. Fspecifier-specs
  10347. Return the specification(s) for SPECIFIER in LOCALE.
  10348.  
  10349. If LOCALE is a single locale or is a list of one element containing a
  10350. single locale, then a "short form" of the instantiators for that locale
  10351. will be returned.  Otherwise, this function is identical to
  10352. `specifier-spec-list'.
  10353.  
  10354. The "short form" is designed for readability and not for ease of use
  10355. in Lisp programs, and is as follows:
  10356.  
  10357. 1. If there is only one instantiator, then an inst-pair (i.e. cons of
  10358.    tag and instantiator) will be returned; otherwise a list of
  10359.    inst-pairs will be returned.
  10360. 2. For each inst-pair returned, if the instantiator's tag is 'any,
  10361.    the tag will be removed and the instantiator itself will be returned
  10362.    instead of the inst-pair.
  10363. 3. If there is only one instantiator, its value is nil, and its tag is
  10364.    'any, a one-element list containing nil will be returned rather
  10365.    than just nil, to distinguish this case from there being no
  10366.    instantiators at all.
  10367.  
  10368. arguments: (SPECIFIER &optional LOCALE TAG-SET EXACT-P)
  10369. Fremove-specifier
  10370. Remove specification(s) for SPECIFIER.
  10371.  
  10372. If LOCALE is a particular locale (a buffer, window, frame, device,
  10373. or 'global), the specification for that locale will be removed.
  10374.  
  10375. If instead, LOCALE is a locale type (i.e. 'buffer, 'window, 'frame,
  10376. or 'device), the specifications for all locales of that type will be
  10377. removed.
  10378.  
  10379. If LOCALE is nil or 'all, all specifications will be removed.
  10380.  
  10381. LOCALE can also be a list of locales, locale types, and/or 'all; this
  10382. is equivalent to calling `remove-specifier' for each of the elements
  10383. in the list.
  10384.  
  10385. Only instantiators where TAG-SET (a list of zero or more tags) is a
  10386. subset of (or possibly equal to) the instantiator's tag set are removed.
  10387. The default value of nil is a subset of all tag sets, so in this case
  10388. no instantiators will be screened out. If EXACT-P is non-nil, however,
  10389. TAG-SET must be equal to an instantiator's tag set for the instantiator
  10390. to be removed.
  10391.  
  10392. arguments: (SPECIFIER &optional LOCALE TAG-SET EXACT-P)
  10393. Fcopy-specifier
  10394. Copy SPECIFIER to DEST, or create a new one if DEST is nil.
  10395.  
  10396. If DEST is nil or omitted, a new specifier will be created and the
  10397. specifications copied into it.  Otherwise, the specifications will be
  10398. copied into the existing specifier in DEST.
  10399.  
  10400. If LOCALE is nil or 'all, all specifications will be copied.  If LOCALE
  10401. is a particular locale, the specification for that particular locale will
  10402. be copied.  If LOCALE is a locale type, the specifications for all locales
  10403. of that type will be copied.  LOCALE can also be a list of locales,
  10404. locale types, and/or 'all; this is equivalent to calling `copy-specifier'
  10405. for each of the elements of the list.  See `specifier-spec-list' for more
  10406. information about LOCALE.
  10407.  
  10408. Only instantiators where TAG-SET (a list of zero or more tags) is a
  10409. subset of (or possibly equal to) the instantiator's tag set are copied.
  10410. The default value of nil is a subset of all tag sets, so in this case
  10411. no instantiators will be screened out. If EXACT-P is non-nil, however,
  10412. TAG-SET must be equal to an instantiator's tag set for the instantiator
  10413. to be copied.
  10414.  
  10415. Optional argument HOW-TO-ADD specifies what to do with existing
  10416. specifications in DEST.  If nil, then whichever locales or locale types
  10417. are copied will first be completely erased in DEST.  Otherwise, it is
  10418. the same as in `add-spec-to-specifier'.
  10419.  
  10420. arguments: (SPECIFIER &optional DEST LOCALE TAG-SET EXACT-P HOW-TO-ADD)
  10421. Fcheck-valid-specifier-matchspec
  10422. Signal an error if MATCHSPEC is invalid for SPECIFIER-TYPE.
  10423. See `specifier-matching-instance' for a description of matchspecs.
  10424.  
  10425. arguments: (MATCHSPEC SPECIFIER-TYPE)
  10426. Fvalid-specifier-matchspec-p
  10427. Return non-nil if MATCHSPEC is valid for SPECIFIER-TYPE.
  10428. See `specifier-matching-instance' for a description of matchspecs.
  10429.  
  10430. arguments: (MATCHSPEC SPECIFIER-TYPE)
  10431. Fspecifier-fallback
  10432. Return the fallback value for SPECIFIER.
  10433. Fallback values are provided by the C code for certain built-in
  10434. specifiers to make sure that instancing won't fail even if all
  10435. specs are removed from the specifier, or to implement simple
  10436. inheritance behavior (e.g. this method is used to ensure that
  10437. faces other than 'default inherit their attributes from 'default).
  10438. By design, you cannot change the fallback value, and specifiers
  10439. created with `make-specifier' will never have a fallback (although
  10440. a similar, Lisp-accessible capability may be provided in the future
  10441. to allow for inheritance).
  10442.  
  10443. The fallback value will be an inst-list that is instanced like
  10444. any other inst-list, a specifier of the same type as SPECIFIER
  10445. (results in inheritance), or nil for no fallback.
  10446.  
  10447. When you instance a specifier, you can explicitly request that the
  10448. fallback not be consulted. (The C code does this, for example, when
  10449. merging faces.) See `specifier-instance'.
  10450.  
  10451. arguments: (SPECIFIER)
  10452. Fspecifier-instance
  10453. Instantiate SPECIFIER (return its value) in DOMAIN.
  10454. If no instance can be generated for this domain, return DEFAULT.
  10455.  
  10456. DOMAIN should be a window, frame, or device.  Other values that are legal
  10457. as a locale (e.g. a buffer) are not valid as a domain because they do not
  10458. provide enough information to identify a particular device (see
  10459. `valid-specifier-domain-p').  DOMAIN defaults to the selected window
  10460. if omitted.
  10461.  
  10462. "Instantiating" a specifier in a particular domain means determining
  10463. the specifier's "value" in that domain.  This is accomplished by
  10464. searching through the specifications in the specifier that correspond
  10465. to all locales that can be derived from the given domain, from specific
  10466. to general.  In most cases, the domain is an Emacs window.  In that case
  10467. specifications are searched for as follows:
  10468.  
  10469. 1. A specification whose locale is the window's buffer;
  10470. 2. A specification whose locale is the window itself;
  10471. 3. A specification whose locale is the window's frame;
  10472. 4. A specification whose locale is the window's frame's device;
  10473. 5. A specification whose locale is 'global.
  10474.  
  10475. If all of those fail, then the C-code-provided fallback value for
  10476. this specifier is consulted (see `specifier-fallback').  If it is
  10477. an inst-list, then this function attempts to instantiate that list
  10478. just as when a specification is located in the first five steps above.
  10479. If the fallback is a specifier, `specifier-instance' is called
  10480. recursively on this specifier and the return value used.  Note,
  10481. however, that if the optional argument NO-FALLBACK is non-nil,
  10482. the fallback value will not be consulted.
  10483.  
  10484. Note that there may be more than one specification matching a particular
  10485. locale; all such specifications are considered before looking for any
  10486. specifications for more general locales.  Any particular specification
  10487. that is found may be rejected because its tag set does not match the
  10488. device being instantiated over, or because the specification is not
  10489. valid for the device of the given domain (e.g. the font or color name
  10490. does not exist for this particular X server).
  10491.  
  10492. The returned value is dependent on the type of specifier.  For example,
  10493. for a font specifier (as returned by the `face-font' function), the returned
  10494. value will be a font-instance object.  For glyphs, the returned value
  10495. will be a string, pixmap, or subwindow.
  10496.  
  10497. See also `specifier-matching-instance'.
  10498.  
  10499. arguments: (SPECIFIER &optional DOMAIN DEFAULT NO-FALLBACK)
  10500. Fspecifier-matching-instance
  10501. Return an instance for SPECIFIER in DOMAIN that matches MATCHSPEC.
  10502. If no instance can be generated for this domain, return DEFAULT.
  10503.  
  10504. This function is identical to `specifier-instance' except that a
  10505. specification will only be considered if it matches MATCHSPEC.
  10506. The definition of "match", and allowed values for MATCHSPEC, are
  10507. dependent on the particular type of specifier.  Here are some examples:
  10508.  
  10509. -- For chartable (e.g. display table) specifiers, MATCHSPEC should be a
  10510.    character, and the specification (a chartable) must give a value for
  10511.    that character in order to be considered.  This allows you to specify,
  10512.    e.g., a buffer-local display table that only gives values for particular
  10513.    characters.  All other characters are handled as if the buffer-local
  10514.    display table is not there. (Chartable specifiers are not yet
  10515.    implemented.)
  10516.  
  10517. -- For font specifiers, MATCHSPEC should be a charset, and the specification
  10518.    (a font string) must have a registry that matches the charset's registry.
  10519.    (This only makes sense with Mule support.) This makes it easy to choose a
  10520.    font that can display a particular character. (This is what redisplay
  10521.    does, in fact.)
  10522.  
  10523. arguments: (SPECIFIER MATCHSPEC &optional DOMAIN DEFAULT NO-FALLBACK)
  10524. Fspecifier-instance-from-inst-list
  10525. Attempt to convert a particular inst-list into an instance.
  10526. This attempts to instantiate INST-LIST in the given DOMAIN,
  10527. as if INST-LIST existed in a specification in SPECIFIER.  If
  10528. the instantiation fails, DEFAULT is returned.  In most circumstances,
  10529. you should not use this function; use `specifier-instance' instead.
  10530.  
  10531. arguments: (SPECIFIER DOMAIN INST-LIST &optional DEFAULT)
  10532. Fspecifier-matching-instance-from-inst-list
  10533. Attempt to convert a particular inst-list into an instance.
  10534. This attempts to instantiate INST-LIST in the given DOMAIN
  10535. (as if INST-LIST existed in a specification in SPECIFIER),
  10536. matching the specifications against MATCHSPEC.
  10537.  
  10538. This function is analogous to `specifier-instance-from-inst-list'
  10539. but allows for specification-matching as in `specifier-matching-instance'.
  10540. See that function for a description of exactly how the matching process
  10541. works.
  10542.  
  10543. arguments: (SPECIFIER MATCHSPEC DOMAIN INST-LIST &optional DEFAULT)
  10544. Fset-specifier-dirty-flag
  10545. Force recomputation of any caches associated with SPECIFIER.
  10546. Note that this automatically happens whenever you change a specification
  10547.  in SPECIFIER; you do not have to call this function then.
  10548. One example of where this function is useful is when you have a
  10549.  toolbar button whose `active-p' field is an expression to be
  10550.  evaluated.  Calling `set-specifier-dirty-flag' on the
  10551.  toolbar specifier will force the `active-p' fields to be
  10552.  recomputed.
  10553.  
  10554. arguments: (SPECIFIER)
  10555. Fgeneric-specifier-p
  10556. Return non-nil if OBJECT is a generic specifier.
  10557.  
  10558. A generic specifier allows any kind of Lisp object as an instantiator,
  10559. and returns back the Lisp object unchanged when it is instantiated.
  10560.  
  10561. arguments: (OBJECT)
  10562. Finteger-specifier-p
  10563. Return non-nil if OBJECT is an integer specifier.
  10564.  
  10565. arguments: (OBJECT)
  10566. Fnatnum-specifier-p
  10567. Return non-nil if OBJECT is a natnum (non-negative-integer) specifier.
  10568.  
  10569. arguments: (OBJECT)
  10570. Fboolean-specifier-p
  10571. Return non-nil if OBJECT is a boolean specifier.
  10572.  
  10573. arguments: (OBJECT)
  10574. Fdisplay-table-specifier-p
  10575. Return non-nil if OBJECT is a display-table specifier.
  10576.  
  10577. arguments: (OBJECT)
  10578. Fintern
  10579. Return the canonical symbol whose name is STRING.
  10580. If there is none, one is created by this function and returned.
  10581. A second optional argument specifies the obarray to use;
  10582. it defaults to the value of `obarray'.
  10583.  
  10584. arguments: (STR &optional OBARRAY)
  10585. Fintern-soft
  10586. Return the canonical symbol whose name is STRING, or nil if none exists.
  10587. A second optional argument specifies the obarray to use;
  10588. it defaults to the value of `obarray'.
  10589.  
  10590. arguments: (STR &optional OBARRAY)
  10591. Funintern
  10592. Delete the symbol named NAME, if any, from OBARRAY.
  10593. The value is t if a symbol was found and deleted, nil otherwise.
  10594. NAME may be a string or a symbol.  If it is a symbol, that symbol
  10595. is deleted, if it belongs to OBARRAY--no other symbol is deleted.
  10596. OBARRAY defaults to the value of the variable `obarray'
  10597.  
  10598. arguments: (NAME &optional OBARRAY)
  10599. Fmapatoms
  10600. Call FUNCTION on every symbol in OBARRAY.
  10601. OBARRAY defaults to the value of `obarray'.
  10602.  
  10603. arguments: (FUNCTION &optional OBARRAY)
  10604. Fapropos-internal
  10605. Show all symbols whose names contain match for REGEXP.
  10606. If optional 2nd arg PRED is non-nil, (funcall PRED SYM) is done
  10607. for each symbol and a symbol is mentioned only if that returns non-nil.
  10608. Return list of symbols found.
  10609.  
  10610. arguments: (STRING &optional PRED)
  10611. Fboundp
  10612. T if SYMBOL's value is not void.
  10613.  
  10614. arguments: (SYM)
  10615. Fglobally-boundp
  10616. T if SYMBOL has a global (non-bound) value.
  10617. This is for the byte-compiler; you really shouldn't be using this.
  10618.  
  10619. arguments: (SYM)
  10620. Ffboundp
  10621. T if SYMBOL's function definition is not void.
  10622.  
  10623. arguments: (SYM)
  10624. Fmakunbound
  10625. Make SYMBOL's value be void.
  10626.  
  10627. arguments: (SYM)
  10628. Ffmakunbound
  10629. Make SYMBOL's function definition be void.
  10630.  
  10631. arguments: (SYM)
  10632. Fsymbol-function
  10633. Return SYMBOL's function definition.     Error if that is void.
  10634.  
  10635. arguments: (SYMBOL)
  10636. Fsymbol-plist
  10637. Return SYMBOL's property list.
  10638.  
  10639. arguments: (SYM)
  10640. Fsymbol-name
  10641. Return SYMBOL's name, a string.
  10642.  
  10643. arguments: (SYM)
  10644. Ffset
  10645. Set SYMBOL's function definition to NEWDEF, and return NEWDEF.
  10646.  
  10647. arguments: (SYM NEWDEF)
  10648. Fdefine-function
  10649. Set SYMBOL's function definition to NEWDEF, and return NEWDEF.
  10650. Associates the function with the current load file, if any.
  10651.  
  10652. arguments: (SYM NEWDEF)
  10653. Fsetplist
  10654. Set SYMBOL's property list to NEWPLIST, and return NEWPLIST.
  10655.  
  10656. arguments: (SYM NEWPLIST)
  10657. Fsymbol-value
  10658. Return SYMBOL's value.  Error if that is void.
  10659.  
  10660. arguments: (SYM)
  10661. Fset
  10662. Set SYMBOL's value to NEWVAL, and return NEWVAL.
  10663.  
  10664. arguments: (SYM NEWVAL)
  10665. Fdefault-boundp
  10666. Return T if SYMBOL has a non-void default value.
  10667. This is the value that is seen in buffers that do not have their own values
  10668. for this variable.
  10669.  
  10670. arguments: (SYM)
  10671. Fdefault-value
  10672. Return SYMBOL's default value.
  10673. This is the value that is seen in buffers that do not have their own values
  10674. for this variable.  The default value is meaningful for variables with
  10675. local bindings in certain buffers.
  10676.  
  10677. arguments: (SYM)
  10678. Fset-default
  10679. Set SYMBOL's default value to VAL.  SYMBOL and VAL are evaluated.
  10680. The default value is seen in buffers that do not have their own values
  10681. for this variable.
  10682.  
  10683. arguments: (SYM VALUE)
  10684. Fsetq-default
  10685. Set the default value of variable SYM to VALUE.
  10686. SYM, the variable name, is literal (not evaluated);
  10687. VALUE is an expression and it is evaluated.
  10688. The default value of a variable is seen in buffers
  10689. that do not have their own values for the variable.
  10690.  
  10691. More generally, you can use multiple variables and values, as in
  10692.   (setq-default SYM VALUE SYM VALUE...)
  10693. This sets each SYM's default value to the corresponding VALUE.
  10694. The VALUE for the Nth SYM can refer to the new default values
  10695. of previous SYMs.Fmake-variable-buffer-local
  10696. Make VARIABLE have a separate value for each buffer.
  10697. At any time, the value for the current buffer is in effect.
  10698. There is also a default value which is seen in any buffer which has not yet
  10699. set its own value.
  10700. Using `set' or `setq' to set the variable causes it to have a separate value
  10701. for the current buffer if it was previously using the default value.
  10702. The function `default-value' gets the default value and `set-default'
  10703. sets it.
  10704.  
  10705. arguments: (VARIABLE)
  10706. Fmake-local-variable
  10707. Make VARIABLE have a separate value in the current buffer.
  10708. Other buffers will continue to share a common default value.
  10709. (The buffer-local value of VARIABLE starts out as the same value
  10710. VARIABLE previously had.  If VARIABLE was void, it remains void.)
  10711. See also `make-variable-buffer-local'.
  10712.  
  10713. If the variable is already arranged to become local when set,
  10714. this function causes a local value to exist for this buffer,
  10715. just as setting the variable would do.
  10716.  
  10717. Do not use `make-local-variable' to make a hook variable buffer-local.
  10718. Use `make-local-hook' instead.
  10719.  
  10720. arguments: (VARIABLE)
  10721. Fkill-local-variable
  10722. Make VARIABLE no longer have a separate value in the current buffer.
  10723. From now on the default value will apply in this buffer.
  10724.  
  10725. arguments: (VARIABLE)
  10726. Fkill-console-local-variable
  10727. Make VARIABLE no longer have a separate value in the selected console.
  10728. From now on the default value will apply in this console.
  10729.  
  10730. arguments: (VARIABLE)
  10731. Fsymbol-value-in-buffer
  10732. Return the value of SYMBOL in BUFFER, or UNBOUND-VALUE if it is unbound.
  10733.  
  10734. arguments: (SYMBOL BUFFER &optional UNBOUND-VALUE)
  10735. Fsymbol-value-in-console
  10736. Return the value of SYMBOL in CONSOLE, or UNBOUND-VALUE if it is unbound.
  10737.  
  10738. arguments: (SYMBOL CONSOLE &optional UNBOUND-VALUE)
  10739. Fbuilt-in-variable-type
  10740. If SYM is a built-in variable, return info about this; else return nil.
  10741. The returned info will be a symbol, one of
  10742.  
  10743. `object'        A simple built-in variable.
  10744. `const-object'        Same, but cannot be set.
  10745. `integer'        A built-in integer variable.
  10746. `const-integer'        Same, but cannot be set.
  10747. `boolean'        A built-in boolean variable.
  10748. `const-boolean'        Same, but cannot be set.
  10749. `const-specifier'    Always contains a specifier; e.g. `has-modeline-p'.
  10750. `current-buffer'    A built-in buffer-local variable.
  10751. `const-current-buffer'    Same, but cannot be set.
  10752. `default-buffer'    Forwards to the default value of a built-in
  10753.             buffer-local variable.
  10754. `selected-console'    A built-in console-local variable.
  10755. `const-selected-console' Same, but cannot be set.
  10756. `default-console'    Forwards to the default value of a built-in
  10757.             console-local variable.
  10758.  
  10759. arguments: (SYM)
  10760. Flocal-variable-p
  10761. Return t if SYMBOL's value is local to BUFFER.
  10762. If optional third arg AFTER-SET is true, return t if SYMBOL would be
  10763. buffer-local after it is set, regardless of whether it is so presently.
  10764. A nil value for BUFFER is *not* the same as (current-buffer), but means
  10765. "no buffer".  Specifically:
  10766.  
  10767. -- If BUFFER is nil and AFTER-SET is nil, a return value of t indicates that
  10768.    the variable is one of the special built-in variables that is always
  10769.    buffer-local. (This includes `buffer-file-name', `buffer-read-only',
  10770.    `buffer-undo-list', and others.)
  10771.  
  10772. -- If BUFFER is nil and AFTER-SET is t, a return value of t indicates that
  10773.    the variable has had `make-variable-buffer-local' applied to it.
  10774.  
  10775. arguments: (SYMBOL BUFFER &optional AFTER-SET)
  10776. Fdontusethis-set-symbol-value-handler
  10777. Don't you dare use this.
  10778. If you do, suffer the wrath of Ben, who is likely to rename
  10779. this function (or change the semantics of its arguments) without
  10780. pity, thereby invalidating your code.
  10781.  
  10782. arguments: (VARIABLE HANDLER-TYPE HANDLER &optional HARG KEEP-EXISTING)
  10783. Fdefvaralias
  10784. Define a variable as an alias for another variable.
  10785. Thenceforth, any operations performed on VARIABLE will actually be
  10786. performed on ALIAS.  Both VARIABLE and ALIAS should be symbols.
  10787. If ALIAS is nil, remove any aliases for VARIABLE.
  10788. ALIAS can itself be aliased, and the chain of variable aliases
  10789. will be followed appropriately.
  10790. If VARIABLE already has a value, this value will be shadowed
  10791. until the alias is removed, at which point it will be restored.
  10792. Currently VARIABLE cannot be a built-in variable, a variable that
  10793. has a buffer-local value in any buffer, or the symbols nil or t.
  10794. (ALIAS, however, can be any type of variable.)
  10795.  
  10796. arguments: (VARIABLE ALIAS)
  10797. Fvariable-alias
  10798. If VARIABLE is aliased to another variable, return that variable.
  10799. VARIABLE should be a symbol.  If VARIABLE is not aliased, return nil.
  10800. Variable aliases are created with `defvaralias'.  See also
  10801. `indirect-variable'.
  10802.  
  10803. arguments: (VARIABLE &optional FOLLOW-PAST-LISP-MAGIC)
  10804. Findirect-variable
  10805. Return the variable at the end of OBJECT's variable-alias chain.
  10806. If OBJECT is a symbol, follow all variable aliases and return
  10807. the final (non-aliased) symbol.  Variable aliases are created with
  10808. the function `defvaralias'.
  10809. If OBJECT is not a symbol, just return it.
  10810. Signal a cyclic-variable-indirection error if there is a loop in the
  10811. variable chain of symbols.
  10812.  
  10813. arguments: (OBJECT &optional FOLLOW-PAST-LISP-MAGIC)
  10814. Vobarray
  10815. Symbol table for use by `intern' and `read'.
  10816. It is a vector whose length ought to be prime for best results.
  10817. The vector's contents don't make sense if examined from Lisp programs;
  10818. to find all the symbols in an obarray, use `mapatoms'.Fsyntax-table-p
  10819. Return t if ARG is a syntax table.
  10820. Any vector of 256 elements will do.
  10821.  
  10822. arguments: (OBJ)
  10823. Fsyntax-table
  10824. Return the current syntax table.
  10825. This is the one specified by the current buffer, or by BUFFER if it
  10826. is non-nil.
  10827.  
  10828. arguments: (&optional BUFFER)
  10829. Fstandard-syntax-table
  10830. Return the standard syntax table.
  10831. This is the one used for new buffers.
  10832.  
  10833. arguments: ()
  10834. Fcopy-syntax-table
  10835. Construct a new syntax table and return it.
  10836. It is a copy of the TABLE, which defaults to the standard syntax table.
  10837.  
  10838. arguments: (&optional TABLE)
  10839. Fset-syntax-table
  10840. Select a new syntax table for BUFFER.
  10841. One argument, a syntax table.
  10842. BUFFER defaults to the current buffer if omitted.
  10843.  
  10844. arguments: (TABLE &optional BUFFER)
  10845. Fsyntax-designator-chars
  10846. Return a string of the recognized syntax designator chars.
  10847. The chars are ordered by their internal syntax codes, which are
  10848. numbered starting at 0.
  10849.  
  10850. arguments: ()
  10851. Fchar-syntax
  10852. Return the syntax code of CHAR, described by a character.
  10853. For example, if CHAR is a word constituent, the character `?w' is returned.
  10854. The characters that correspond to various syntax codes
  10855. are listed in the documentation of `modify-syntax-entry'.
  10856. Optional second argument TABLE defaults to the current buffer's
  10857. syntax table.
  10858.  
  10859. arguments: (CH &optional TABLE)
  10860. Fmatching-paren
  10861. Return the matching parenthesis of CHAR, or nil if none.
  10862. Optional second argument TABLE defaults to the current buffer's
  10863. syntax table.
  10864.  
  10865. arguments: (CH &optional TABLE)
  10866. Fforward-word
  10867. Move point forward ARG words (backward if ARG is negative).
  10868. Normally returns t.
  10869. If an edge of the buffer is reached, point is left there
  10870. and nil is returned.
  10871.  
  10872. arguments: (COUNT &optional BUFFER)
  10873. Fforward-comment
  10874. Move forward across up to N comments.  If N is negative, move backward.
  10875. Stop scanning if we find something other than a comment or whitespace.
  10876. Set point to where scanning stops.
  10877. If N comments are found as expected, with nothing except whitespace
  10878. between them, return t; otherwise return nil.
  10879. Point is set in either case.
  10880. Optional argument BUFFER defaults to the current buffer.
  10881.  
  10882. arguments: (N &optional BUFFER)
  10883. Fscan-lists
  10884. Scan from character number FROM by COUNT lists.
  10885. Returns the character number of the position thus found.
  10886.  
  10887. If DEPTH is nonzero, paren depth begins counting from that value,
  10888. only places where the depth in parentheses becomes zero
  10889. are candidates for stopping; COUNT such places are counted.
  10890. Thus, a positive value for DEPTH means go out levels.
  10891.  
  10892. Comments are ignored if `parse-sexp-ignore-comments' is non-nil.
  10893.  
  10894. If the beginning or end of (the accessible part of) the buffer is reached
  10895. and the depth is wrong, an error is signaled.
  10896. If the depth is right but the count is not used up, nil is returned.
  10897.  
  10898. If optional arg BUFFER is non-nil, scanning occurs in that buffer instead
  10899. of in the current buffer.
  10900.  
  10901. If optional arg NOERROR is non-nil, scan-lists will return nil instead of
  10902. signalling an error.
  10903.  
  10904. arguments: (FROM COUNT DEPTH &optional BUFFER NO-ERROR)
  10905. Fscan-sexps
  10906. Scan from character number FROM by COUNT balanced expressions.
  10907. If COUNT is negative, scan backwards.
  10908. Returns the character number of the position thus found.
  10909.  
  10910. Comments are ignored if `parse-sexp-ignore-comments' is non-nil.
  10911.  
  10912. If the beginning or end of (the accessible part of) the buffer is reached
  10913. in the middle of a parenthetical grouping, an error is signaled.
  10914. If the beginning or end is reached between groupings
  10915. but before count is used up, nil is returned.
  10916.  
  10917. If optional arg BUFFER is non-nil, scanning occurs in that buffer instead
  10918. of in the current buffer.
  10919.  
  10920. If optional arg NOERROR is non-nil, scan-sexps will return nil instead of
  10921. signalling an error.
  10922.  
  10923. arguments: (FROM COUNT &optional BUFFER NO-ERROR)
  10924. Fbackward-prefix-chars
  10925. Move point backward over any number of chars with prefix syntax.
  10926. This includes chars with "quote" or "prefix" syntax (' or p).
  10927.  
  10928. Optional arg BUFFER defaults to the current buffer.
  10929.  
  10930. arguments: (&optional BUFFER)
  10931. Fparse-partial-sexp
  10932. Parse Lisp syntax starting at FROM until TO; return status of parse at TO.
  10933. Parsing stops at TO or when certain criteria are met;
  10934.  point is set to where parsing stops.
  10935. If fifth arg STATE is omitted or nil,
  10936.  parsing assumes that FROM is the beginning of a function.
  10937. Value is a list of eight elements describing final state of parsing:
  10938.  0. depth in parens.
  10939.  1. character address of start of innermost containing list; nil if none.
  10940.  2. character address of start of last complete sexp terminated.
  10941.  3. non-nil if inside a string.
  10942.     (It is the character that will terminate the string.)
  10943.  4. t if inside a comment.
  10944.  5. t if following a quote character.
  10945.  6. the minimum paren-depth encountered during this scan.
  10946.  7. nil if in comment style a, or not in a comment; t if in comment style b
  10947. If third arg TARGETDEPTH is non-nil, parsing stops if the depth
  10948. in parentheses becomes equal to TARGETDEPTH.
  10949. Fourth arg STOPBEFORE non-nil means stop when come to
  10950.  any character that starts a sexp.
  10951. Fifth arg STATE is an eight-element list like what this function returns.
  10952. It is used to initialize the state of the parse.  Its second and third
  10953. elements are ignored.
  10954. Sixth arg COMMENTSTOP non-nil means stop at the start of a comment.
  10955.  
  10956. arguments: (FROM TO &optional TARGETDEPTH STOPBEFORE OLDSTATE COMMENTSTOP BUFFER)
  10957. Vparse-sexp-ignore-comments
  10958. Non-nil means `forward-sexp', etc., should treat comments as whitespace.Vwords-include-escapes
  10959. Non-nil means `forward-word', etc., should treat escape chars part of words.Fundo-boundary
  10960. Mark a boundary between units of undo.
  10961. An undo command will stop at this point,
  10962. but another undo command will undo to the previous boundary.
  10963.  
  10964. arguments: ()
  10965. Fprimitive-undo
  10966. Undo COUNT records from the front of the list LIST.
  10967. Return what remains of the list.
  10968.  
  10969. arguments: (COUNT LIST)
  10970. Fshow-balloon-help
  10971. Show balloon help.
  10972.  
  10973. arguments: (STRING)
  10974. Fhide-balloon-help
  10975. Hide balloon help.
  10976.  
  10977. arguments: ()
  10978. Fballoon-help-move-to-pointer
  10979. Move the balloon help to the place where the pointer currently resides.
  10980.  
  10981. arguments: ()
  10982. Fx-debug-mode
  10983. With a true arg, make the connection to the X server synchronous.
  10984. With false, make it asynchronous.  Synchronous connections are much slower,
  10985. but are useful for debugging. (If you get X errors, make the connection
  10986. synchronous, and use a debugger to set a breakpoint on `x_error_handler'.
  10987. Your backtrace of the C stack will now be useful.  In asynchronous mode,
  10988. the stack above `x_error_handler' isn't helpful because of buffering.)
  10989. If DEVICE is not specified, the selected device is assumed.
  10990.  
  10991. Calling this function is the same as calling the C function `XSynchronize',
  10992. or starting the program with the `-sync' command line argument.
  10993.  
  10994. arguments: (ARG &optional DEVICE)
  10995. Fx-get-resource
  10996. Retrieve an X resource from the resource manager.
  10997.  
  10998. The first arg is the name of the resource to retrieve, such as "font".
  10999. The second arg is the class of the resource to retrieve, like "Font".
  11000. The third arg should be one of the symbols 'string, 'integer, 'natnum, or
  11001.   'boolean, specifying the type of object that the database is searched for.
  11002. The fourth arg is the locale to search for the resources on, and can
  11003.   currently be a a buffer, a frame, a device, or 'global.  If omitted, it
  11004.   defaults to 'global.
  11005. The fifth arg is the device to search for the resources on. (The resource
  11006.   database for a particular device is constructed by combining non-device-
  11007.   specific resources such as any command-line resources specified and any
  11008.   app-defaults files found [or the fallback resources supplied by XEmacs,
  11009.   if no app-defaults file is found] with device-specific resources such as
  11010.   those supplied using xrdb.) If omitted, it defaults to the device of
  11011.   LOCALE, if a device can be derived (i.e. if LOCALE is a frame or device),
  11012.   and otherwise defaults to the value of `default-x-device'.
  11013. The sixth arg NOERROR, if non-nil, means do not signal an error if a
  11014.   bogus resource specification was retrieved (e.g. if a non-integer was
  11015.   given when an integer was requested).  In this case, a warning is issued
  11016.   instead.
  11017.  
  11018. The resource names passed to this function are looked up relative to the
  11019. locale.
  11020.  
  11021. If you want to search for a subresource, you just need to specify the
  11022. resource levels in NAME and CLASS.  For example, NAME could be
  11023. "modeline.attributeFont", and CLASS "Face.AttributeFont".
  11024.  
  11025. Specifically,
  11026.  
  11027. 1) If LOCALE is a buffer, a call
  11028.  
  11029.     (x-get-resource "foreground" "Foreground" 'string SOME-BUFFER)
  11030.  
  11031. is an interface to a C call something like
  11032.  
  11033.     XrmGetResource (db, "xemacs.buffer.BUFFER-NAME.foreground",
  11034.             "Emacs.EmacsLocaleType.EmacsBuffer.Foreground",
  11035.             "String");
  11036.  
  11037. 2) If LOCALE is a frame, a call
  11038.  
  11039.     (x-get-resource "foreground" "Foreground" 'string SOME-FRAME)
  11040.  
  11041. is an interface to a C call something like
  11042.  
  11043.     XrmGetResource (db, "xemacs.frame.FRAME-NAME.foreground",
  11044.             "Emacs.EmacsLocaleType.EmacsFrame.Foreground",
  11045.             "String");
  11046.  
  11047. 3) If LOCALE is a device, a call
  11048.  
  11049.     (x-get-resource "foreground" "Foreground" 'string SOME-DEVICE)
  11050.  
  11051. is an interface to a C call something like
  11052.  
  11053.     XrmGetResource (db, "xemacs.device.DEVICE-NAME.foreground",
  11054.             "Emacs.EmacsLocaleType.EmacsDevice.Foreground",
  11055.             "String");
  11056.  
  11057. 4) If LOCALE is 'global, a call
  11058.  
  11059.     (x-get-resource "foreground" "Foreground" 'string 'global)
  11060.  
  11061. is an interface to a C call something like
  11062.  
  11063.     XrmGetResource (db, "xemacs.foreground",
  11064.             "Emacs.Foreground",
  11065.             "String");
  11066.  
  11067. Note that for 'global, no prefix is added other than that of the
  11068. application itself; thus, you can use this locale to retrieve
  11069. arbitrary application resources, if you really want to.
  11070.  
  11071. The returned value of this function is nil if the queried resource is not
  11072. found.  If the third arg is `string', a string is returned, and if it is
  11073. `integer', an integer is returned.  If the third arg is `boolean', then the
  11074. returned value is the list (t) for true, (nil) for false, and is nil to
  11075. mean ``unspecified.''
  11076.  
  11077. arguments: (NAME CLASS TYPE &optional LOCALE DEVICE NO-ERROR)
  11078. Fx-get-resource-prefix
  11079. Return the resource prefix for LOCALE on DEVICE.
  11080. The resource prefix is the strings used to prefix resources if
  11081. the LOCALE and DEVICE arguments were passed to `x-get-resource'.
  11082. The returned value is a cons of a name prefix and a class prefix.
  11083. For example, if LOCALE is a frame, the returned value might be
  11084. ("xemacs.frame.FRAME-NAME" . "Emacs.EmacsLocaleType.EmacsFrame").
  11085. If no valid X device for resourcing can be obtained, this function
  11086. returns nil. (In such a case, `x-get-resource' would always return nil.)
  11087.  
  11088. arguments: (LOCALE &optional DEVICE)
  11089. Fx-put-resource
  11090. Add a resource to the resource database for DEVICE.
  11091. RESOURCE-LINE specifies the resource to add and should be a
  11092. standard resource specification.
  11093.  
  11094. arguments: (RESOURCE-LINE &optional DEVICE)
  11095. Fdefault-x-device
  11096. Return the default X device for resourcing.
  11097. This is the first-created X device that still exists.
  11098.  
  11099. arguments: ()
  11100. Fx-display-visual-class
  11101. Return the visual class of the X display `device' is on.
  11102. The returned value will be one of the symbols `static-gray', `gray-scale',
  11103. `static-color', `pseudo-color', `true-color', or `direct-color'.
  11104.  
  11105. arguments: (&optional DEVICE)
  11106. Fx-server-vendor
  11107. Return the vendor ID string of the X server `device' on.
  11108.  
  11109. arguments: (&optional DEVICE)
  11110. Fx-server-version
  11111. Return the version numbers of the X server `device' is on.
  11112. The returned value is a list of three integers: the major and minor
  11113. version numbers of the X Protocol in use, and the vendor-specific release
  11114. number.  See also `x-server-vendor'.
  11115.  
  11116. arguments: (&optional DEVICE)
  11117. Fx-valid-keysym-name-p
  11118. Return true if KEYSYM names a keysym that the X library knows about.
  11119. Valid keysyms are listed in the files /usr/include/X11/keysymdef.h and in
  11120. /usr/lib/X11/XKeysymDB, or whatever the equivalents are on your system.
  11121.  
  11122. arguments: (KEYSYM)
  11123. Fx-keysym-hashtable
  11124. Return a hashtable which contains a hash key for all keysyms which
  11125. name keys on the keyboard.  See `x-keysym-on-keyboard-p'.
  11126.  
  11127. arguments: (&optional DEVICE)
  11128. Fx-keysym-on-keyboard-sans-modifiers-p
  11129. Return true if KEYSYM names a key on the keyboard of DEVICE.
  11130. More precisely, return true if pressing a physical key
  11131. on the keyboard of DEVICE without any modifier keys generates KEYSYM.
  11132. Valid keysyms are listed in the files /usr/include/X11/keysymdef.h and in
  11133. /usr/lib/X11/XKeysymDB, or whatever the equivalents are on your system.
  11134. The keysym name can be provided in two forms:
  11135. - if keysym is a string, it must be the name as known to X windows.
  11136. - if keysym is a symbol, it must be the name as known to XEmacs.
  11137. The two names differ in capitalization and underscoring.
  11138.  
  11139. arguments: (KEYSYM &optional DEVICE)
  11140. Fx-keysym-on-keyboard-p
  11141. Return true if KEYSYM names a key on the keyboard of DEVICE.
  11142. More precisely, return true if some keystroke (possibly including modifiers)
  11143. on the keyboard of DEVICE keys generates KEYSYM.
  11144. Valid keysyms are listed in the files /usr/include/X11/keysymdef.h and in
  11145. /usr/lib/X11/XKeysymDB, or whatever the equivalents are on your system.
  11146. The keysym name can be provided in two forms:
  11147. - if keysym is a string, it must be the name as known to X windows.
  11148. - if keysym is a symbol, it must be the name as known to XEmacs.
  11149. The two names differ in capitalization and underscoring.
  11150.  
  11151. arguments: (KEYSYM &optional DEVICE)
  11152. Fx-grab-pointer
  11153. Grab the pointer and restrict it to its current window.
  11154. If optional DEVICE argument is nil, the default device will be used.
  11155. If optional CURSOR argument is non-nil, change the pointer shape to that
  11156.  until `x-ungrab-pointer' is called (it should be an object returned by the
  11157.  `make-cursor-glyph' function).
  11158. If the second optional argument IGNORE-KEYBOARD is non-nil, ignore all
  11159.   keyboard events during the grab.
  11160. Returns t if the grab is successful, nil otherwise.
  11161.  
  11162. arguments: (&optional DEVICE CURSOR IGNORE-KEYBOARD)
  11163. Fx-ungrab-pointer
  11164. Release a pointer grab made with `x-grab-pointer'.
  11165. If optional first arg DEVICE is nil the default device is used.
  11166. If it is t the pointer will be released on all X devices.
  11167.  
  11168. arguments: (&optional DEVICE)
  11169. Fx-grab-keyboard
  11170. Grab the keyboard on the given device (defaulting to the selected one).
  11171. So long as the keyboard is grabbed, all keyboard events will be delivered
  11172. to emacs -- it is not possible for other X clients to eavesdrop on them.
  11173. Ungrab the keyboard with `x-ungrab-keyboard' (use an unwind-protect).
  11174. Returns t if the grab was successful; nil otherwise.
  11175.  
  11176. arguments: (&optional DEVICE)
  11177. Fx-ungrab-keyboard
  11178. Release a keyboard grab made with `x-grab-keyboard'.
  11179.  
  11180. arguments: (&optional DEVICE)
  11181. Vx-emacs-application-class
  11182. The X application class of the XEmacs process.
  11183. This controls, among other things, the name of the `app-defaults' file
  11184. that XEmacs will use.  For changes to this variable to take effect, they
  11185. must be made before the connection to the X server is initialized, that is,
  11186. this variable may only be changed before emacs is dumped, or by setting it
  11187. in the file lisp/term/x-win.el.Vx-initial-argv-list
  11188. You don't want to know.
  11189. This is used during startup to communicate the remaining arguments in
  11190. `command-line-args-left' to the C code, which passes the args to
  11191. the X initialization code, which removes some args, and then the
  11192. args are placed back into `x-initial-arg-list' and thence into
  11193. `command-line-args-left'.  Perhaps `command-line-args-left' should
  11194. just reside in C.Vx-seppuku-on-epipe
  11195. When non-nil terminate XEmacs immediately on SIGPIPE from the X server.
  11196. XEmacs doesn't terminate properly on some systems.
  11197. When this variable is non-nil, XEmacs will commit immediate suicide
  11198. when it gets a sigpipe from the X Server.Vmodifier-keys-are-sticky
  11199. *Non-nil makes modifier keys sticky.
  11200. This means that you can release the modifier key before pressing down
  11201. the key that you wish to be modified.  Although this is non-standard
  11202. behavior, it is recommended because it reduces the strain on your hand,
  11203. thus reducing the incidence of the dreaded Emacs-pinky syndrome.Vx-allow-sendevents
  11204. *Non-nil means to allow synthetic events.  Nil means they are ignored.
  11205. Beware: allowing emacs to process SendEvents opens a big security hole.Vx-debug-events
  11206. If non-zero, display debug information about X events that XEmacs sees.
  11207. Information is displayed on stderr.  Currently defined values are:
  11208.  
  11209. 1 == non-verbose output
  11210. 2 == verbose outputFcde-start-drag-internal
  11211. Start a CDE drag from a buffer.
  11212.  
  11213. arguments: (TEXT)
  11214. Foffix-start-drag-internal
  11215. First arg is the event that started the drag,
  11216. second arg should be some string, and the third
  11217. is the type of the data (this should be an int).
  11218. The type defaults to DndText (4).
  11219. Start a OffiX drag from a buffer.
  11220.  
  11221. arguments: (EVENT DATA &optional DTYP)
  11222. Fx-window-id
  11223. Get the ID of the X11 window.
  11224. This gives us a chance to manipulate the Emacs window from within a
  11225. different program.  Since the ID is an unsigned long, we return it as
  11226. a string.
  11227.  
  11228. arguments: (&optional FRAME)
  11229. Vdefault-x-frame-plist
  11230. Plist of default frame-creation properties for X frames.
  11231. These override what is specified in the resource database and in
  11232. `default-frame-plist', but are overridden by the arguments to the
  11233. particular call to `make-frame'.
  11234.  
  11235. Note: In many cases, properties of a frame are available as specifiers
  11236. instead of through the frame-properties mechanism.
  11237.  
  11238. Here is a list of recognized frame properties, other than those
  11239. documented in `set-frame-properties' (they can be queried and
  11240. set at any time, except as otherwise noted):
  11241.  
  11242.   window-id            The X window ID corresponding to the
  11243.                 frame.  May be set only at startup, and
  11244.                 only if external widget support was
  11245.                 compiled in; doing so causes the frame
  11246.                 to be created as an "external widget"
  11247.                 in another program that uses an existing
  11248.                 window in the program rather than creating
  11249.                 a new one.
  11250.   initially-unmapped        If non-nil, the frame will not be visible
  11251.                 when it is created.  In this case, you
  11252.                 need to call `make-frame-visible' to make
  11253.                 the frame appear.
  11254.   popup                If non-nil, it should be a frame, and this
  11255.                 frame will be created as a "popup" frame
  11256.                 whose parent is the given frame.  This
  11257.                 will make the window manager treat the
  11258.                 frame as a dialog box, which may entail
  11259.                 doing different things (e.g. not asking
  11260.                 for positioning, and not iconifying
  11261.                 separate from its parent).
  11262.   inter-line-space        Not currently implemented.
  11263.   toolbar-shadow-thickness    Thickness of toolbar shadows.
  11264.   background-toolbar-color    Color of toolbar background.
  11265.   bottom-toolbar-shadow-color    Color of bottom shadows on toolbars.
  11266.                 (*Not* specific to the bottom-toolbar.)
  11267.   top-toolbar-shadow-color    Color of top shadows on toolbars.
  11268.                 (*Not* specifier to the top-toolbar.)
  11269.   internal-border-width        Width of internal border around text area.
  11270.   border-width            Width of external border around text area.
  11271.   top                Y position (in pixels) of the upper-left
  11272.                 outermost corner of the frame (i.e. the
  11273.                 upper-left of the window-manager
  11274.                 decorations).
  11275.   left                X position (in pixels) of the upper-left
  11276.                 outermost corner of the frame (i.e. the
  11277.                 upper-left of the window-manager
  11278.                 decorations).
  11279.   border-color            Color of external border around text area.
  11280.   cursor-color            Color of text cursor.
  11281.  
  11282. See also `default-frame-plist', which specifies properties which apply
  11283. to all frames, not just X frames.Fmake-subwindow
  11284. Creates a new `subwindow' object of size WIDTH x HEIGHT.
  11285. The default is a window of size 1x1, which is also the minimum allowed
  11286. window size.  Subwindows are per-frame.  A buffer being shown in two
  11287. different frames will only display a subwindow glyph in the frame in
  11288. which it was actually created.  If two windows on the same frame are
  11289. displaying the buffer then the most recently used window will actually
  11290. display the window.  If the frame is not specified, the selected frame
  11291. is used.
  11292.  
  11293. Subwindows are not currently implemented.
  11294.  
  11295. arguments: (&optional WIDTH HEIGHT FRAME)
  11296. Fchange-subwindow-property
  11297. For the given SUBWINDOW, set PROPERTY to DATA, which is a string.
  11298. Subwindows are not currently implemented.
  11299.  
  11300. arguments: (SUBWINDOW PROPERTY DATA)
  11301. Fsubwindowp
  11302. Return non-nil if OBJECT is a subwindow.
  11303. Subwindows are not currently implemented.
  11304.  
  11305. arguments: (OBJECT)
  11306. Fsubwindow-width
  11307. Width of SUBWINDOW.
  11308. Subwindows are not currently implemented.
  11309.  
  11310. arguments: (SUBWINDOW)
  11311. Fsubwindow-height
  11312. Height of SUBWINDOW.
  11313. Subwindows are not currently implemented.
  11314.  
  11315. arguments: (SUBWINDOW)
  11316. Fsubwindow-xid
  11317. Return the xid of SUBWINDOW as a number.
  11318. Subwindows are not currently implemented.
  11319.  
  11320. arguments: (SUBWINDOW)
  11321. Fresize-subwindow
  11322. Resize SUBWINDOW to WIDTH x HEIGHT.
  11323. If a value is nil that parameter is not changed.
  11324. Subwindows are not currently implemented.
  11325.  
  11326. arguments: (SUBWINDOW &optional WIDTH HEIGHT)
  11327. Fforce-subwindow-map
  11328. Generate a Map event for SUBWINDOW.
  11329. Subwindows are not currently implemented.
  11330.  
  11331. arguments: (SUBWINDOW)
  11332. Vxpm-color-symbols
  11333. Definitions of logical color-names used when reading XPM files.
  11334. Elements of this list should be of the form (COLOR-NAME FORM-TO-EVALUATE).
  11335. The COLOR-NAME should be a string, which is the name of the color to define;
  11336. the FORM should evaluate to a `color' specifier object, or a string to be
  11337. passed to `make-color-instance'.  If a loaded XPM file references a symbolic
  11338. color called COLOR-NAME, it will display as the computed color instead.
  11339.  
  11340. The default value of this variable defines the logical color names
  11341. "foreground" and "background" to be the colors of the `default' face.Vx-bitmap-file-path
  11342. A list of the directories in which X bitmap files may be found.
  11343. If nil, this is initialized from the "*bitmapFilePath" resource.
  11344. This is used by the `make-image-instance' function (however, note that if
  11345. the environment variable XBMLANGPATH is set, it is consulted first).Vx-handle-non-fully-specified-fonts
  11346. If this is true then fonts which do not have all characters specified
  11347. will be considered to be proportional width even if they are actually
  11348. fixed-width.  If this is not done then characters which are supposed to
  11349. have 0 width may appear to actually have some width.
  11350.  
  11351. Note:  While setting this to t guarantees correct output in all
  11352. circumstances, it also causes a noticeable performance hit when using
  11353. fixed-width fonts.  Since most people don't use characters which could
  11354. cause problems this is set to nil by default.Fx-selection-reply-timeout-internal
  11355.  
  11356.  
  11357. arguments: (ARG)
  11358. Fx-own-selection-internal
  11359. Assert an X selection of the given TYPE with the given VALUE.
  11360. TYPE is a symbol, typically PRIMARY, SECONDARY, or CLIPBOARD.
  11361. VALUE is typically a string, or a cons of two markers, but may be
  11362. anything that the functions on selection-converter-alist know about.
  11363.  
  11364. arguments: (SELECTION-NAME SELECTION-VALUE)
  11365. Fx-get-selection-internal
  11366. Return text selected from some X window.
  11367. SELECTION_SYMBOL is a symbol, typically PRIMARY, SECONDARY, or CLIPBOARD.
  11368. TARGET_TYPE is the type of data desired, typically STRING or COMPOUND_TEXT.
  11369. Under Mule, if the resultant data comes back as 8-bit data in type
  11370. TEXT or COMPOUND_TEXT, it will be decoded as Compound Text.
  11371.  
  11372. arguments: (SELECTION-SYMBOL TARGET-TYPE)
  11373. Fx-disown-selection-internal
  11374. If we own the named selection, then disown it (make there be no selection).
  11375.  
  11376. arguments: (SELECTION &optional TIMEVAL)
  11377. Fx-selection-owner-p
  11378. Whether the current emacs process owns the given X Selection.
  11379. The arg should be the name of the selection in question, typically one of
  11380. the symbols PRIMARY, SECONDARY, or CLIPBOARD.  (For convenience, the symbol
  11381. nil is the same as PRIMARY, and t is the same as SECONDARY.)
  11382.  
  11383. arguments: (&optional SELECTION)
  11384. Fx-selection-exists-p
  11385. Whether there is an owner for the given X Selection.
  11386. The arg should be the name of the selection in question, typically one of
  11387. the symbols PRIMARY, SECONDARY, or CLIPBOARD.  (For convenience, the symbol
  11388. nil is the same as PRIMARY, and t is the same as SECONDARY.)
  11389.  
  11390. arguments: (&optional SELECTION)
  11391. Fx-get-cutbuffer-internal
  11392. Return the value of the named CUTBUFFER (typically CUT_BUFFER0).
  11393.  
  11394. arguments: (CUTBUFFER)
  11395. Fx-store-cutbuffer-internal
  11396. Set the value of the named CUTBUFFER (typically CUT_BUFFER0) to STRING.
  11397.  
  11398. arguments: (CUTBUFFER STRING)
  11399. Fx-rotate-cutbuffers-internal
  11400. Rotate the values of the cutbuffers by the given number of steps;
  11401. positive means move values forward, negative means backward.
  11402.  
  11403. arguments: (N)
  11404. Vselection-converter-alist
  11405. An alist associating selection-types (such as STRING and TIMESTAMP) with
  11406. functions.  These functions will be called with three args: the name of the
  11407. selection (typically PRIMARY, SECONDARY, or CLIPBOARD); a desired type to
  11408. which the selection should be converted; and the local selection value
  11409.  (whatever had been passed to `x-own-selection').  These functions should
  11410. return the value to send to the X server, which should be one of:
  11411.  
  11412. -- nil (the conversion could not be done)
  11413. -- a cons of a symbol and any of the following values; the symbol
  11414.    explicitly specifies the type that will be sent.
  11415. -- a string (If the type is not specified, then if Mule support exists,
  11416.              the string will be converted to Compound Text and sent in
  11417.              the 'COMPOUND_TEXT format; otherwise (no Mule support),
  11418.              the string will be left as-is and sent in the 'STRING
  11419.              format.  If the type is specified, the string will be
  11420.              left as-is (or converted to binary format under Mule).
  11421.              In all cases, 8-bit data it sent.)
  11422. -- a character (With Mule support, will be converted to Compound Text
  11423.                 whether or not a type is specified.  If a type is not
  11424.                 specified, a type of 'STRING or 'COMPOUND_TEXT will be
  11425.         sent, as for strings.)
  11426. -- the symbol 'NULL (Indicates that there is no meaningful return value.
  11427.                      Empty 32-bit data with a type of 'NULL will be sent.)
  11428. -- a symbol (Will be converted into an atom.  If the type is not specified,
  11429.              a type of 'ATOM will be sent.)
  11430. -- an integer (Will be converted into a 16-bit or 32-bit integer depending
  11431.                on the value.  If the type is not specified, a type of
  11432.            'INTEGER will be sent.)
  11433. -- a cons (HIGH . LOW) of integers (Will be converted into a 32-bit integer.
  11434.                                     If the type is not specified, a type of
  11435.                     'INTEGER will be sent.)
  11436. -- a vector of symbols (Will be converted into a list of atoms.  If the type
  11437.                         is not specified, a type of 'ATOM will be sent.)
  11438. -- a vector of integers (Will be converted into a list of 16-bit integers.
  11439.                          If the type is not specified, a type of 'INTEGER
  11440.              will be sent.)
  11441. -- a vector of integers and/or conses (HIGH . LOW) of integers
  11442.                         (Will be converted into a list of 16-bit integers.
  11443.                          If the type is not specified, a type of 'INTEGER
  11444.              will be sent.)Vx-lost-selection-hooks
  11445. A function or functions to be called after the X server has notified us
  11446. that we have lost the selection.  The function(s) will be called with one
  11447. argument, a symbol naming the selection (typically PRIMARY, SECONDARY, or
  11448. CLIPBOARD).Vx-sent-selection-hooks
  11449. A function or functions to be called after we have responded to some
  11450. other client's request for the value of a selection that we own.  The
  11451. function(s) will be called with four arguments:
  11452.   - the name of the selection (typically PRIMARY, SECONDARY, or CLIPBOARD);
  11453.   - the name of the selection-type which we were requested to convert the
  11454.     selection into before sending (for example, STRING or LENGTH);
  11455.   - and whether we successfully transmitted the selection.
  11456. We might have failed (and declined the request) for any number of reasons,
  11457. including being asked for a selection that we no longer own, or being asked
  11458. to convert into a type that we don't know about or that is inappropriate.
  11459. This hook doesn't let you change the behavior of emacs's selection replies,
  11460. it merely informs you that they have happened.Vx-selection-timeout
  11461. If the selection owner doesn't reply in this many seconds, we give up.
  11462. A value of 0 means wait as long as necessary.  This is initialized from the
  11463. "*selectionTimeout" resource (which is expressed in milliseconds).Fwidget-plist-member
  11464. Like `plist-get', but returns the tail of PLIST whose car is PROP.
  11465.  
  11466. arguments: (PLIST PROP)
  11467. Fwidget-put
  11468. In WIDGET set PROPERTY to VALUE.
  11469. The value can later be retrived with `widget-get'.
  11470.  
  11471. arguments: (WIDGET PROPERTY VALUE)
  11472. Fwidget-get
  11473. In WIDGET, get the value of PROPERTY.
  11474. The value could either be specified when the widget was created, or
  11475. later with `widget-put'.
  11476.  
  11477. arguments: (WIDGET PROPERTY)
  11478. Fwidget-apply
  11479. Apply the value of WIDGET's PROPERTY to the widget itself.
  11480. ARGS are passed as extra arguments to the function.Fwindowp
  11481. Return t if OBJ is a window.
  11482.  
  11483. arguments: (OBJ)
  11484. Fwindow-live-p
  11485. Return t if OBJ is a window which is currently visible.
  11486.  
  11487. arguments: (OBJ)
  11488. Fselected-window
  11489. Return the window that the cursor now appears in and commands apply to.
  11490. If the optional argument CON-DEV-OR-FRAME is specified and is a frame, return
  11491. the selected window used by that frame.  If CON-DEV-OR-FRAME is a device,
  11492. then the selected frame on that device will be used.  If CON-DEV-OR-FRAME
  11493. is a console, the selected frame on that console's selected device will
  11494. be used.  Otherwise, the selected frame is used.
  11495.  
  11496. arguments: (&optional CON-DEV-OR-FRAME)
  11497. Fminibuffer-window
  11498. Return the window used now for minibuffers.
  11499. If the optional argument CON-DEV-OR-FRAME is specified and is a frame, return
  11500. the minibuffer window used by that frame.  If CON-DEV-OR-FRAME is a device,
  11501. then the selected frame on that device will be used.  If CON-DEV-OR-FRAME
  11502. is a console, the selected frame on that console's selected device will
  11503. be used.  Otherwise, the selected frame is used.
  11504.  
  11505. arguments: (&optional CON-DEV-OR-FRAME)
  11506. Fwindow-minibuffer-p
  11507. Return non-nil if WINDOW is a minibuffer window.
  11508.  
  11509. arguments: (WINDOW)
  11510. Fwindow-first-hchild
  11511. Return the first horizontal child of WINDOW, or nil.
  11512.  
  11513. arguments: (WINDOW)
  11514. Fwindow-first-vchild
  11515. Return the first vertical child of WINDOW, or nil.
  11516.  
  11517. arguments: (WINDOW)
  11518. Fwindow-next-child
  11519. Return the next window on the same level as WINDOW, or nil.
  11520.  
  11521. arguments: (WINDOW)
  11522. Fwindow-previous-child
  11523. Return the previous window on the same level as WINDOW, or nil.
  11524.  
  11525. arguments: (WINDOW)
  11526. Fwindow-parent
  11527. Return the parent of WINDOW, or nil.
  11528.  
  11529. arguments: (WINDOW)
  11530. Fwindow-lowest-p
  11531. Return non-nil if WINDOW is along the bottom of its frame.
  11532.  
  11533. arguments: (WINDOW)
  11534. Fwindow-highest-p
  11535. Return non-nil if WINDOW is along the top of its frame.
  11536.  
  11537. arguments: (WINDOW)
  11538. Fwindow-leftmost-p
  11539. Return non-nil if WINDOW is along the left edge of its frame.
  11540.  
  11541. arguments: (WINDOW)
  11542. Fwindow-rightmost-p
  11543. Return non-nil if WINDOW is along the right edge of its frame.
  11544.  
  11545. arguments: (WINDOW)
  11546. Fpos-visible-in-window-p
  11547. Return t if position POS is currently on the frame in WINDOW.
  11548. Returns nil if that position is scrolled vertically out of view.
  11549. POS defaults to point in WINDOW's buffer; WINDOW, to the selected window.
  11550.  
  11551. arguments: (&optional POS WINDOW)
  11552. Fwindow-buffer
  11553. Return the buffer that WINDOW is displaying.
  11554.  
  11555. arguments: (&optional WINDOW)
  11556. Fwindow-frame
  11557. Return the frame that window WINDOW is on.
  11558.  
  11559. arguments: (&optional WINDOW)
  11560. Fwindow-height
  11561. Return the number of default lines in WINDOW.
  11562. This actually works by dividing the window's pixel height (including
  11563. the modeline and horizontal scrollbar, if any) by the height of the
  11564. default font; therefore, the number of displayed lines will probably
  11565. be different.
  11566. Use `window-height' to get consistent results in geometry calculations.
  11567. Use `window-displayed-height' to get the actual number of lines
  11568. currently displayed in a window.
  11569.  
  11570. arguments: (&optional WINDOW)
  11571. Fwindow-displayed-height
  11572. Return the number of lines currently displayed in WINDOW.
  11573. This counts the actual number of lines displayed in WINDOW
  11574. (as opposed to `window-height').  The modeline and horizontal
  11575. scrollbar do not count as lines.  If there is some blank space
  11576. between the end of the buffer and the end of the window, this
  11577. function pretends that there are lines of text in the default
  11578. font there.
  11579.  
  11580. arguments: (&optional WINDOW)
  11581. Fwindow-pixel-height
  11582. Return the height of WINDOW in pixels.  Defaults to current window.
  11583. This includes the window's modeline and horizontal scrollbar (if any).
  11584.  
  11585. arguments: (&optional WINDOW)
  11586. Fwindow-width
  11587. Return the number of display columns in WINDOW.
  11588. This is the width that is usable columns available for text in WINDOW.
  11589.  
  11590. arguments: (&optional WINDOW)
  11591. Fwindow-pixel-width
  11592. Return the width of WINDOW in pixels.  Defaults to current window.
  11593.  
  11594. arguments: (&optional WINDOW)
  11595. Fwindow-hscroll
  11596. Return the number of columns by which WINDOW is scrolled from left margin.
  11597.  
  11598. arguments: (&optional WINDOW)
  11599. Fset-window-hscroll
  11600. Set number of columns WINDOW is scrolled from left margin to NCOL.
  11601. NCOL should be zero or positive.
  11602.  
  11603. arguments: (WINDOW NCOL)
  11604. Fwindow-pixel-edges
  11605. Return a list of the pixel edge coordinates of WINDOW.
  11606. (LEFT TOP RIGHT BOTTOM), all relative to 0, 0 at top left corner of frame.
  11607. The frame toolbars and menubars are considered to be outside of this area.
  11608.  
  11609. arguments: (&optional WINDOW)
  11610. Fwindow-point
  11611. Return current value of point in WINDOW.
  11612. For a nonselected window, this is the value point would have
  11613. if that window were selected.
  11614.  
  11615. Note that, when WINDOW is the selected window and its buffer
  11616. is also currently selected, the value returned is the same as (point).
  11617. It would be more strictly correct to return the `top-level' value
  11618. of point, outside of any save-excursion forms.
  11619. But that is hard to define.
  11620.  
  11621. arguments: (&optional WINDOW)
  11622. Fwindow-start
  11623. Return position at which display currently starts in WINDOW.
  11624. This is updated by redisplay or by calling `set-window-start'.
  11625.  
  11626. arguments: (&optional WINDOW)
  11627. Fwindow-end
  11628. Return position at which display currently ends in WINDOW.
  11629. This is updated by redisplay, when it runs to completion.
  11630. Simply changing the buffer text or setting `window-start'
  11631. does not update this value.
  11632. If GUARANTEE is non-nil, then the return value is guaranteed to be
  11633. the value of window-end at the end of the next full redisplay assuming
  11634. nothing else changes in the meantime.  This function is potentially much
  11635. slower with this flag set.
  11636.  
  11637. arguments: (&optional WINDOW GUARANTEE)
  11638. Fset-window-point
  11639. Make point value in WINDOW be at position POS in WINDOW's buffer.
  11640.  
  11641. arguments: (WINDOW POS)
  11642. Fset-window-start
  11643. Make display in WINDOW start at position POS in WINDOW's buffer.
  11644. Optional third arg NOFORCE non-nil inhibits next redisplay
  11645. from overriding motion of point in order to display at this exact start.
  11646.  
  11647. arguments: (WINDOW POS &optional NOFORCE)
  11648. Fwindow-dedicated-p
  11649. Return WINDOW's dedicated object, usually t or nil.
  11650. See also `set-window-dedicated-p'.
  11651.  
  11652. arguments: (WINDOW)
  11653. Fset-window-dedicated-p
  11654. Control whether WINDOW is dedicated to the buffer it displays.
  11655. If it is dedicated, Emacs will not automatically change
  11656. which buffer appears in it.
  11657. The second argument is the new value for the dedication flag;
  11658. non-nil means yes.
  11659.  
  11660. arguments: (WINDOW ARG)
  11661. Fdelete-window
  11662. Remove WINDOW from the display.  Default is selected window.
  11663. If window is the only one on the frame, the frame is destroyed.
  11664. Normally, you cannot delete the last non-minibuffer-only frame (you must
  11665. use `save-buffers-kill-emacs' or `kill-emacs').  However, if optional
  11666. second argument FORCE is non-nil, you can delete the last frame. (This
  11667. will automatically call `save-buffers-kill-emacs'.)
  11668.  
  11669. arguments: (&optional WINDOW FORCE)
  11670. Fnext-window
  11671. Return next window after WINDOW in canonical ordering of windows.
  11672. If omitted, WINDOW defaults to the selected window.
  11673.  
  11674. Optional second arg MINIBUF t means count the minibuffer window even
  11675. if not active.  MINIBUF nil or omitted means count the minibuffer iff
  11676. it is active.  MINIBUF neither t nor nil means not to count the
  11677. minibuffer even if it is active.
  11678.  
  11679. Several frames may share a single minibuffer; if the minibuffer
  11680. counts, all windows on all frames that share that minibuffer count
  11681. too.  Therefore, `next-window' can be used to iterate through the
  11682. set of windows even when the minibuffer is on another frame.  If the
  11683. minibuffer does not count, only windows from WINDOW's frame count.
  11684.  
  11685. Optional third arg ALL-FRAMES t means include windows on all frames.
  11686. ALL-FRAMES nil or omitted means cycle within the frames as specified
  11687. above.  ALL-FRAMES = `visible' means include windows on all visible frames.
  11688. ALL-FRAMES = 0 means include windows on all visible and iconified frames.
  11689. If ALL-FRAMES is a frame, restrict search to windows on that frame.
  11690. Anything else means restrict to WINDOW's frame.
  11691.  
  11692. Optional fourth argument CONSOLE controls which consoles or devices the
  11693. returned window may be on.  If CONSOLE is a console, return windows only
  11694. on that console.  If CONSOLE is a device, return windows only on that
  11695. device.  If CONSOLE is a console type, return windows only on consoles
  11696. of that type.  If CONSOLE is 'window-system, return any windows on any
  11697. window-system consoles.  If CONSOLE is nil or omitted, return windows only
  11698. on WINDOW's console.  Otherwise, all windows are considered.
  11699.  
  11700. If you use consistent values for MINIBUF, ALL-FRAMES, and CONSOLE, you
  11701. can use `next-window' to iterate through the entire cycle of acceptable
  11702. windows, eventually ending up back at the window you started with.
  11703. `previous-window' traverses the same cycle, in the reverse order.
  11704.  
  11705. arguments: (&optional WINDOW MINIBUF ALL-FRAMES CONSOLE)
  11706. Fprevious-window
  11707. Return the window preceding WINDOW in canonical ordering of windows.
  11708. If omitted, WINDOW defaults to the selected window.
  11709.  
  11710. Optional second arg MINIBUF t means count the minibuffer window even
  11711. if not active.  MINIBUF nil or omitted means count the minibuffer iff
  11712. it is active.  MINIBUF neither t nor nil means not to count the
  11713. minibuffer even if it is active.
  11714.  
  11715. Several frames may share a single minibuffer; if the minibuffer
  11716. counts, all windows on all frames that share that minibuffer count
  11717. too.  Therefore, `previous-window' can be used to iterate through
  11718. the set of windows even when the minibuffer is on another frame.  If
  11719. the minibuffer does not count, only windows from WINDOW's frame count
  11720.  
  11721. If optional third arg ALL-FRAMES t means include windows on all frames.
  11722. ALL-FRAMES nil or omitted means cycle within the frames as specified
  11723. above.  ALL-FRAMES = `visible' means include windows on all visible frames.
  11724. ALL-FRAMES = 0 means include windows on all visible and iconified frames.
  11725. If ALL-FRAMES is a frame, restrict search to windows on that frame.
  11726. Anything else means restrict to WINDOW's frame.
  11727.  
  11728. Optional fourth argument CONSOLE controls which consoles or devices the
  11729. returned window may be on.  If CONSOLE is a console, return windows only
  11730. on that console.  If CONSOLE is a device, return windows only on that
  11731. device.  If CONSOLE is a console type, return windows only on consoles
  11732. of that type.  If CONSOLE is 'window-system, return any windows on any
  11733. window-system consoles.  If CONSOLE is nil or omitted, return windows only
  11734. on WINDOW's console.  Otherwise, all windows are considered.
  11735.  
  11736. If you use consistent values for MINIBUF, ALL-FRAMES, and CONSOLE, you
  11737. can use `previous-window' to iterate through the entire cycle of acceptable
  11738. windows, eventually ending up back at the window you started with.
  11739. `next-window' traverses the same cycle, in the reverse order.
  11740.  
  11741. arguments: (&optional WINDOW MINIBUF ALL-FRAMES CONSOLE)
  11742. Fnext-vertical-window
  11743. Return the next window which is vertically after WINDOW.
  11744.  
  11745. arguments: (&optional WINDOW)
  11746. Fother-window
  11747. Select the N'th different window on this frame.
  11748. All windows on current frame are arranged in a cyclic order.
  11749. This command selects the window N steps away in that order.
  11750. A negative N moves in the opposite order.
  11751.  
  11752. If optional argument FRAME is `visible', search all visible frames.
  11753. If FRAME is 0, search all visible and iconified frames.
  11754. If FRAME is t, search all frames.
  11755. If FRAME is nil, search only the selected frame.
  11756. If FRAME is a frame, search only that frame.
  11757.  
  11758. Optional third argument CONSOLE controls which consoles or devices the
  11759. returned window may be on.  If CONSOLE is a console, return windows only
  11760. on that console.  If CONSOLE is a device, return windows only on that
  11761. device.  If CONSOLE is a console type, return windows only on consoles
  11762. of that type.  If CONSOLE is 'window-system, return any windows on any
  11763. window-system consoles.  If CONSOLE is nil or omitted, return windows only
  11764. on FRAME'S console, or on the selected console if FRAME is not a frame.
  11765. Otherwise, all windows are considered.
  11766.  
  11767. arguments: (N &optional FRAME CONSOLE)
  11768. Fget-lru-window
  11769. Return the window least recently selected or used for display.
  11770. If optional argument FRAME is `visible', search all visible frames.
  11771. If FRAME is 0, search all visible and iconified frames.
  11772. If FRAME is t, search all frames.
  11773. If FRAME is nil, search only the selected frame.
  11774. If FRAME is a frame, search only that frame.
  11775.  
  11776. Optional second argument CONSOLE controls which consoles or devices the
  11777. returned window may be on.  If CONSOLE is a console, return windows only
  11778. on that console.  If CONSOLE is a device, return windows only on that
  11779. device.  If CONSOLE is a console type, return windows only on consoles
  11780. of that type.  If CONSOLE is 'window-system, return any windows on any
  11781. window-system consoles.  If CONSOLE is nil or omitted, return windows only
  11782. on FRAME'S console, or on the selected console if FRAME is not a frame.
  11783. Otherwise, all windows are considered.
  11784.  
  11785. arguments: (&optional FRAME CONSOLE)
  11786. Fget-largest-window
  11787. Return the window largest in area.
  11788. If optional argument FRAME is `visible', search all visible frames.
  11789. If FRAME is 0, search all visible and iconified frames.
  11790. If FRAME is t, search all frames.
  11791. If FRAME is nil, search only the selected frame.
  11792. If FRAME is a frame, search only that frame.
  11793.  
  11794. Optional second argument CONSOLE controls which consoles or devices the
  11795. returned window may be on.  If CONSOLE is a console, return windows only
  11796. on that console.  If CONSOLE is a device, return windows only on that
  11797. device.  If CONSOLE is a console type, return windows only on consoles
  11798. of that type.  If CONSOLE is 'window-system, return any windows on any
  11799. window-system consoles.  If CONSOLE is nil or omitted, return windows only
  11800. on FRAME'S console, or on the selected console if FRAME is not a frame.
  11801. Otherwise, all windows are considered.
  11802.  
  11803. arguments: (&optional FRAME CONSOLE)
  11804. Fget-buffer-window
  11805. Return a window currently displaying BUFFER, or nil if none.
  11806. If optional argument FRAME is `visible', search all visible frames.
  11807. If optional argument FRAME is 0, search all visible and iconified frames.
  11808. If FRAME is t, search all frames.
  11809. If FRAME is nil, search only the selected frame.
  11810. If FRAME is a frame, search only that frame.
  11811.  
  11812. Optional third argument CONSOLE controls which consoles or devices the
  11813. returned window may be on.  If CONSOLE is a console, return windows only
  11814. on that console.  If CONSOLE is a device, return windows only on that
  11815. device.  If CONSOLE is a console type, return windows only on consoles
  11816. of that type.  If CONSOLE is 'window-system, return any windows on any
  11817. window-system consoles.  If CONSOLE is nil or omitted, return windows only
  11818. on FRAME'S console, or on the selected console if FRAME is not a frame.
  11819. Otherwise, all windows are considered.
  11820.  
  11821. arguments: (BUFFER &optional FRAME CONSOLE)
  11822. Fwindow-left-margin-pixel-width
  11823. Return the width in pixels of the left outside margin of window WINDOW.
  11824. If WINDOW is nil, the selected window is assumed.
  11825.  
  11826. arguments: (&optional WINDOW)
  11827. Fwindow-right-margin-pixel-width
  11828. Return the width in pixels of the right outside margin of window WINDOW.
  11829. If WINDOW is nil, the selected window is assumed.
  11830.  
  11831. arguments: (&optional WINDOW)
  11832. Fdelete-other-windows
  11833. Make WINDOW (or the selected window) fill its frame.
  11834. Only the frame WINDOW is on is affected.
  11835. This function tries to reduce display jumps
  11836. by keeping the text previously visible in WINDOW
  11837. in the same place on the frame.  Doing this depends on
  11838. the value of (window-start WINDOW), so if calling this function
  11839. in a program gives strange scrolling, make sure the window-start
  11840. value is reasonable when this function is called.
  11841.  
  11842. arguments: (&optional WINDOW)
  11843. Fdelete-windows-on
  11844. Delete all windows showing BUFFER.
  11845. Optional second argument FRAME controls which frames are affected.
  11846. If nil or omitted, delete all windows showing BUFFER in any frame.
  11847. If t, delete only windows showing BUFFER in the selected frame.
  11848. If `visible', delete all windows showing BUFFER in any visible frame.
  11849. If a frame, delete only windows showing BUFFER in that frame.
  11850.  
  11851. Optional third argument CONSOLE controls which consoles or devices the
  11852. returned window may be on.  If CONSOLE is a console, return windows only
  11853. on that console.  If CONSOLE is a device, return windows only on that
  11854. device.  If CONSOLE is a console type, return windows only on consoles
  11855. of that type.  If CONSOLE is 'window-system, return any windows on any
  11856. window-system consoles.  If CONSOLE is nil or omitted, return windows only
  11857. on FRAME'S console, or on the selected console if FRAME is not a frame.
  11858. Otherwise, all windows are considered.
  11859.  
  11860. arguments: (BUFFER &optional FRAME CONSOLE)
  11861. Freplace-buffer-in-windows
  11862. Replace BUFFER with some other buffer in all windows showing it.
  11863.  
  11864. arguments: (BUFFER)
  11865. Fset-window-buffer
  11866. Make WINDOW display BUFFER as its contents.
  11867. BUFFER can be a buffer or buffer name.
  11868.  
  11869. arguments: (WINDOW BUFFER)
  11870. Fselect-window
  11871. Select WINDOW.  Most editing will apply to WINDOW's buffer.
  11872. The main editor command loop selects the buffer of the selected window
  11873. before each command.
  11874.  
  11875. arguments: (WINDOW)
  11876. Fsplit-window
  11877. Split WINDOW, putting SIZE lines in the first of the pair.
  11878. WINDOW defaults to selected one and SIZE to half its size.
  11879. If optional third arg HOR-FLAG is non-nil, split side by side
  11880. and put SIZE columns in the first of the pair.
  11881.  
  11882. arguments: (&optional WINDOW CHSIZE HORFLAG)
  11883. Fenlarge-window
  11884. Make the selected window ARG lines bigger.
  11885. From program, optional second arg non-nil means grow sideways ARG columns,
  11886. and optional third ARG specifies the window to change instead of the
  11887. selected window.
  11888.  
  11889. arguments: (N &optional SIDE WINDOW)
  11890. Fshrink-window
  11891. Make the selected window ARG lines smaller.
  11892. From program, optional second arg non-nil means shrink sideways ARG columns,
  11893. and optional third ARG specifies the window to change instead of the
  11894. selected window.
  11895.  
  11896. arguments: (N &optional SIDE WINDOW)
  11897. Fscroll-up
  11898. Scroll text of current window upward ARG lines; or near full screen if no ARG.
  11899. A near full screen is `next-screen-context-lines' less than a full screen.
  11900. Negative ARG means scroll downward.
  11901. When calling from a program, supply a number as argument or nil.
  11902.  
  11903. If `signal-error-on-buffer-boundary' is nil, the usual error and
  11904. loss of zmacs region is suppressed when moving past end of buffer.
  11905.  
  11906. arguments: (&optional N)
  11907. Fscroll-down
  11908. Scroll text of current window downward ARG lines; or near full screen if no ARG.
  11909. A near full screen is `next-screen-context-lines' less than a full screen.
  11910. Negative ARG means scroll upward.
  11911. When calling from a program, supply a number as argument or nil.
  11912.  
  11913. If `signal-error-on-buffer-boundary' is nil, the usual error and
  11914. loss of zmacs region is suppressed when moving past end of buffer.
  11915.  
  11916. arguments: (&optional N)
  11917. Fother-window-for-scrolling
  11918. Return the other window for "other window scroll" commands.
  11919. If in the minibuffer, `minibuffer-scroll-window' if non-nil
  11920. specifies the window.
  11921. If `other-window-scroll-buffer' is non-nil, a window
  11922. showing that buffer is used.
  11923.  
  11924. arguments: ()
  11925. Fscroll-other-window
  11926. Scroll next window upward ARG lines; or near full frame if no ARG.
  11927. The next window is the one below the current one; or the one at the top
  11928. if the current one is at the bottom.  Negative ARG means scroll downward.
  11929. When calling from a program, supply a number as argument or nil.
  11930.  
  11931. If in the minibuffer, `minibuf-scroll-window' if non-nil
  11932. specifies the window to scroll.
  11933. If `other-window-scroll-buffer' is non-nil, scroll the window
  11934. showing that buffer, popping the buffer up if necessary.
  11935.  
  11936. arguments: (&optional N)
  11937. Fscroll-left
  11938. Scroll selected window display ARG columns left.
  11939. Default for ARG is window width minus 2.
  11940.  
  11941. arguments: (&optional ARG)
  11942. Fscroll-right
  11943. Scroll selected window display ARG columns right.
  11944. Default for ARG is window width minus 2.
  11945.  
  11946. arguments: (&optional ARG)
  11947. Frecenter
  11948. Center point in WINDOW and redisplay frame.  With N, put point on line N.
  11949. The desired position of point is always relative to the window.
  11950. Just C-u as prefix means put point in the center of the window.
  11951. No N (i.e., it is nil) erases the entire frame and then
  11952. redraws with point in the center of the window.
  11953. If WINDOW is nil, the selected window is used.
  11954.  
  11955. arguments: (&optional N WINDOW)
  11956. Fmove-to-window-line
  11957. Position point relative to WINDOW.
  11958. With no argument, position text at center of window.
  11959. An argument specifies window line; zero means top of window,
  11960. negative means relative to bottom of window.
  11961. If WINDOW is nil, the selected window is used.
  11962.  
  11963. arguments: (ARG &optional WINDOW)
  11964. Fwindow-memory-usage
  11965. Return stats about the memory usage of window WINDOW.
  11966. The values returned are in the form an alist of usage types and byte
  11967. counts.  The byte counts attempt to encompass all the memory used
  11968. by the window (separate from the memory logically associated with a
  11969. buffer or frame), including internal structures and any malloc()
  11970. overhead associated with them.  In practice, the byte counts are
  11971. underestimated because certain memory usage is very hard to determine
  11972. (e.g. the amount of memory used inside the Xt library or inside the
  11973. X server) and because there is other stuff that might logically
  11974. be associated with a window, buffer, or frame (e.g. window configurations,
  11975. glyphs) but should not obviously be included in the usage counts.
  11976.  
  11977. Multiple slices of the total memory usage may be returned, separated
  11978. by a nil.  Each slice represents a particular view of the memory, a
  11979. particular way of partitioning it into groups.  Within a slice, there
  11980. is no overlap between the groups of memory, and each slice collectively
  11981. represents all the memory concerned.
  11982.  
  11983. arguments: (WINDOW)
  11984. Fwindow-configuration-p
  11985. T if OBJECT is a window-configuration object.
  11986.  
  11987. arguments: (OBJ)
  11988. Fset-window-configuration
  11989. Set the configuration of windows and buffers as specified by CONFIGURATION.
  11990. CONFIGURATION must be a value previously returned
  11991. by `current-window-configuration' (which see).
  11992.  
  11993. arguments: (CONFIGURATION)
  11994. Fcurrent-window-configuration
  11995. Return an object representing the current window configuration of FRAME.
  11996. If FRAME is nil or omitted, use the selected frame.
  11997. This describes the number of windows, their sizes and current buffers,
  11998. and for each displayed buffer, where display starts, and the positions of
  11999. point and mark.  An exception is made for point in the current buffer:
  12000. its value is -not- saved.
  12001.  
  12002. arguments: (&optional FRAME)
  12003. Fsave-window-excursion
  12004. Execute body, preserving window sizes and contents.
  12005. Restores which buffer appears in which window, where display starts,
  12006. as well as the current buffer.
  12007. Does not restore the value of point in current buffer.Vscroll-on-clipped-lines
  12008. *Non-nil means to scroll if point lands on a line which is clipped.Vtemp-buffer-show-hook
  12009. See `temp-buffer-show-function'.Vtemp-buffer-show-function
  12010. Non-nil means call as function to display a help buffer.
  12011. The function is called with one argument, the buffer to be displayed.
  12012. Used by `with-output-to-temp-buffer'.
  12013. If this function is used, then it must do the entire job of showing
  12014. the buffer; `temp-buffer-show-hook' is not run unless this function runs it.Vminibuffer-scroll-window
  12015. Non-nil means it is the window that \<minibuffer-local-map>\[scroll-other-window] in minibuffer should scroll.Vother-window-scroll-buffer
  12016. If non-nil, this is a buffer and \[scroll-other-window] should scroll its window.Vnext-screen-context-lines
  12017. *Number of lines of continuity when scrolling by screenfuls.Vwindow-min-height
  12018. *Delete any window less than this tall (including its modeline).Vwindow-min-width
  12019. *Delete any window less than this wide.Vmodeline-shadow-thickness
  12020. *How thick to draw 3D shadows around modelines.
  12021. If this is set to 0, modelines will be the traditional 2D.  Sizes above
  12022. 10 will be accepted but the maximum thickness that will be drawn is 10.
  12023. This is a specifier; use `set-specifier' to change it.Vhas-modeline-p
  12024. *Whether the modeline should be displayed.
  12025. This is a specifier; use `set-specifier' to change it.Fmmap-allocator-status
  12026. Return some information about mmap-based allocator.
  12027.  
  12028.   mmap-addrlist-size: number of entries in address picking list.
  12029.   mmap-times-mapped: number of times r_alloc was called.
  12030.   mmap-pages-mapped: number of pages mapped by r_alloc calls only.
  12031.   mmap-times-unmapped: number of times r_free was called.
  12032.   mmap-times-remapped: number of times r_re_alloc was called.
  12033.   mmap-didnt-copy: number of times  re-alloc didn't have to move the block.
  12034.   mmap-pages-copied: total number of pages copied.
  12035.   mmap-average-bumpval: average increase in size demanded to re-alloc.
  12036.   mmap-wastage: total number of bytes allocated, but not currently in use.
  12037.   mmap-live-pages: total number of pages live.
  12038.  
  12039. arguments: ()
  12040. Vmmap-hysteresis
  12041. Extra room left at the end of an allocated arena,
  12042. so that a re-alloc requesting extra space smaller than this
  12043. does not actually cause a new arena to be allocated.
  12044.  
  12045. A negative value is considered equal to zero.  This is the
  12046. minimum amount of space guaranteed to be left at the end of
  12047. the arena.  Because allocation happens in multiples of the OS
  12048. page size, it is possible for more space to be left unused.
  12049. Fbackquote
  12050. Expand the internal representation of a backquoted TEMPLATE into a lisp form.
  12051.  
  12052. The backquote character is like the quote character in that it prevents the
  12053. template which follows it from being evaluated, except that backquote
  12054. permits you to evaluate portions of the quoted template.  A comma character
  12055. inside TEMPLATE indicates that the following item should be evaluated.  A
  12056. comma character may be followed by an at-sign, which indicates that the form
  12057. which follows should be evaluated and inserted and "spliced" into the
  12058. template.  Forms following ,@ must evaluate to lists.
  12059.  
  12060. Here is how to use backquotes:
  12061.   (setq p 'b
  12062.         q '(c d e))
  12063.   `(a ,p ,@q)   -> (a b c d e)
  12064.   `(a . b)      -> (a . b)
  12065.   `(a . ,p)     -> (a . b)
  12066.  
  12067. The XEmacs lisp reader expands lisp backquotes as it reads them.
  12068. Examples:
  12069.   `atom             is read as (backquote atom)
  12070.   `(a ,b ,@(c d e)) is read as (backquote (a (\, b) (\,\@ (c d e))))
  12071.   `(a . ,p)         is read as (backquote (a \, p))
  12072.  
  12073. (backquote TEMPLATE) is a macro that produces code to construct TEMPLATE.
  12074. Note that this is very slow in interpreted code, but fast if you compile.
  12075. TEMPLATE is one or more nested lists or vectors, which are `almost quoted'.
  12076. They are copied recursively, with elements preceded by comma evaluated.
  12077.  (backquote (a b))     == (list 'a 'b)  
  12078.  (backquote (a [b c])) == (list 'a (vector 'b 'c)) 
  12079.  
  12080. However, certain special lists are not copied.  They specify substitution.
  12081. Lists that look like (\, EXP) are evaluated and the result is substituted.
  12082.  (backquote (a (\, (+ x 5)))) == (list 'a (+ x 5))
  12083.  
  12084. Elements of the form (\,\@ EXP) are evaluated and then all the elements
  12085. of the result are substituted.  This result must be a list; it may
  12086. be `nil'.
  12087.  
  12088. Elements of the form (\,\. EXP) are evaluated and then all the elements
  12089. of the result are concatenated to the list of preceding elements in the list.
  12090. They must occur as the last element of a list (not a vector).
  12091. EXP may evaluate to nil.
  12092.  
  12093. As an example, a simple macro `push' could be written:
  12094.    (defmacro push (v l)
  12095.      `(setq ,l (cons ,@(list v l))))
  12096. or as
  12097.    (defmacro push (v l)
  12098.      `(setq ,l (cons ,v ,l)))
  12099.  
  12100. For backwards compatibility, old-style emacs-lisp backquotes are still read.
  12101.      OLD STYLE                        NEW STYLE
  12102.      (` (foo (, bar) (,@ bing)))      `(foo ,bar ,@bing)
  12103.  
  12104. Because of the old-style backquote support, you cannot use a new-style
  12105. backquoted form as the first element of a list.  Perhaps some day this
  12106. restriction will go away, but for now you should be wary of it:
  12107.     (`(this ,will ,@fail))
  12108.     ((` (but (, this) will (,@ work))))
  12109. This is an extremely rare thing to need to do in lisp.
  12110. Fbq-list*
  12111. Returns a list of its arguments with last cons a dotted pair.
  12112. Fproclaim-inline
  12113. Cause the named functions to be open-coded when called from compiled code.
  12114. They will only be compiled open-coded when byte-optimize is true.
  12115. Fproclaim-notinline
  12116. Cause the named functions to no longer be open-coded.
  12117. Fdefsubst
  12118. Define an inline function.  The syntax is just like that of `defun'.
  12119. Fmake-obsolete
  12120. Make the byte-compiler warn that FUNCTION is obsolete.
  12121. The warning will say that NEW should be used instead.
  12122. If NEW is a string, that is the `use instead' message.
  12123. Fmake-obsolete-variable
  12124. Make the byte-compiler warn that VARIABLE is obsolete,
  12125. and NEW should be used instead.  If NEW is a string, then that is the
  12126. `use instead' message.
  12127. Fmake-compatible
  12128. Make the byte-compiler know that FUNCTION is provided for compatibility.
  12129. The warning will say that NEW should be used instead.
  12130. If NEW is a string, that is the `use instead' message.
  12131. Fmake-compatible-variable
  12132. Make the byte-compiler know that VARIABLE is provided for compatibility.
  12133. and NEW should be used instead.  If NEW is a string, then that is the
  12134. `use instead' message.
  12135. Fdont-compile
  12136. Like `progn', but the body always runs interpreted (not compiled).
  12137. If you think you need this, you're probably making a mistake somewhere.
  12138. Feval-when-compile
  12139. Like `progn', but evaluates the body at compile time.
  12140. The result of the body appears to the compiler as a quoted constant.
  12141. Feval-and-compile
  12142. Like `progn', but evaluates the body at compile time and at load time.
  12143. Feval-when-feature
  12144. Run the body forms when FEATURE is featurep, be it now or later.
  12145. Called (eval-when-feature (FEATURE [. FILENAME]) BODYFORMS...).
  12146. If (featurep 'FEATURE), evals now; otherwise adds an elt to
  12147. `after-load-alist' (which see), using FEATURE as filename if FILENAME is nil.
  12148. Fbyte-compiler-options
  12149. Set some compilation-parameters for this file.  
  12150. This will affect only the file in which it appears; this does nothing when
  12151. evaluated, or when loaded from a .el file.
  12152.  
  12153. Each argument to this macro must be a list of a key and a value.
  12154.  
  12155.   Keys:          Values:        Corresponding variable:
  12156.  
  12157.   verbose      t, nil        byte-compile-verbose
  12158.   optimize      t, nil, source, byte    byte-optimize
  12159.   warnings      list of warnings    byte-compile-warnings
  12160.   file-format      emacs19, emacs20    byte-compile-emacs19-compatibility
  12161.  
  12162. The value specified with the `warnings' option must be a list, containing
  12163. some subset of the following flags:
  12164.  
  12165.   free-vars    references to variables not in the current lexical scope.
  12166.   unused-vars    references to non-global variables bound but not referenced.
  12167.   unresolved    calls to unknown functions.
  12168.   callargs    lambda calls with args that don't match the definition.
  12169.   redefine    function cell redefined from a macro to a lambda or vice
  12170.         versa, or redefined to take a different number of arguments.
  12171.  
  12172. If the first element if the list is `+' or `-' then the specified elements 
  12173. are added to or removed from the current set of warnings, instead of the
  12174. entire set of warnings being overwritten.
  12175.  
  12176. For example, something like this might appear at the top of a source file:
  12177.  
  12178.     (byte-compiler-options
  12179.       (optimize t)
  12180.       (warnings (- callargs))        ; Don't warn about arglist mismatch
  12181.       (warnings (+ unused-vars))    ; Do warn about unused bindings
  12182.       (file-format emacs19))
  12183. Vautoload-file-name
  12184. Filename that autoloads are expected to be found in.
  12185. Vpackages-hardcoded-lisp
  12186. Lisp packages that are always dumped with XEmacs
  12187. Vpackages-useful-lisp
  12188. Lisp packages that need early byte compilation.
  12189. Vpackages-unbytecompiled-lisp
  12190. Lisp packages that should not be byte compiled.
  12191. Flambda
  12192. Return a lambda expression.
  12193. A call of the form (lambda ARGS DOCSTRING INTERACTIVE BODY) is
  12194. self-quoting; the result of evaluating the lambda expression is the
  12195. expression itself.  The lambda expression may then be treated as a
  12196. function, i.e., stored as the function value of a symbol, passed to
  12197. funcall or mapcar, etc.
  12198.  
  12199. ARGS should take the same form as an argument list for a `defun'.
  12200. DOCSTRING is an optional documentation string.
  12201.  If present, it should describe how to call the function.
  12202.  But documentation strings are usually not useful in nameless functions.
  12203. INTERACTIVE should be a call to the function `interactive', which see.
  12204. It may also be omitted.
  12205. BODY should be a list of lisp expressions.
  12206. Flocate-library
  12207. Show the precise file name of Emacs library LIBRARY.
  12208. This command searches the directories in `load-path' like `M-x load-library'
  12209. to find the file that `M-x load-library RET LIBRARY RET' would load.
  12210. Optional second arg NOSUFFIX non-nil means don't add suffixes `.elc' or `.el'
  12211. to the specified name LIBRARY.
  12212.  
  12213. If the optional third arg PATH is specified, that list of directories
  12214. is used instead of `load-path'.
  12215. Flist-autoloads-path
  12216. List autoloads from precomputed load-path.
  12217. Flist-autoloads
  12218. List autoload files in (what will be) the normal lisp search path.
  12219. This function is used during build to find where the global symbol files so
  12220. they can be perused for their useful information.
  12221. Fpackages-find-packages-1
  12222. Search the supplied directory for associated directories.
  12223. The top level is assumed to look like:
  12224. info/           Contain texinfo files for lisp installed in this hierarchy
  12225. etc/            Contain data files for lisp installled in this hiearchy
  12226. lisp/           Contain directories which either have straight lisp code
  12227.                 or are self-contained packages of their own.
  12228.  
  12229. This is an internal function.  Do not call it after startup.
  12230. Fpackages-find-packages
  12231. Search the supplied path for additional info/etc/lisp directories.
  12232. Lisp directories if configured prior to build time will have equivalent
  12233. status as bundled packages.
  12234. If the argument `path-only' is non-nil, only the `load-path' will be set,
  12235. otherwise data directories and info directories will be added.
  12236. If the optional argument `suppress-user' is non-nil, package directories
  12237. rooted in a user login directory (like ~/.xemacs) will not be searched.
  12238. This is used at dump time to suppress the builder's local environment.
  12239. Flocate-data-directory
  12240. Locate a directory in a search path DIR-LIST (a list of directories).
  12241. If no DIR-LIST is supplied, it defaults to `data-directory-list'.
  12242. Flocate-data-file
  12243. Locate a file in a search path DIR-LIST (a list of directories).
  12244. If no DIR-LIST is supplied, it defaults to `data-directory-list'.
  12245. Fdefun-when-void
  12246. Define a function, just like `defun', unless it's already defined.
  12247. Used for compatibility among different emacs variants.
  12248. Fdefine-function-when-void
  12249. Define a function, just like `define-function', unless it's already defined.
  12250. Used for compatibility among different emacs variants.
  12251. Flistify-key-sequence
  12252. Convert a key sequence to a list of events.
  12253. Flocal-variable-if-set-p
  12254. Return t if SYM would be local to BUFFER after it is set.
  12255. A nil value for BUFFER is *not* the same as (current-buffer), but
  12256. can be used to determine whether `make-variable-buffer-local' has been
  12257. called on SYM.
  12258. Fmake-local-hook
  12259. Make the hook HOOK local to the current buffer.
  12260. When a hook is local, its local and global values
  12261. work in concert: running the hook actually runs all the hook
  12262. functions listed in *either* the local value *or* the global value
  12263. of the hook variable.
  12264.  
  12265. This function works by making `t' a member of the buffer-local value,
  12266. which acts as a flag to run the hook functions in the default value as
  12267. well.  This works for all normal hooks, but does not work for most
  12268. non-normal hooks yet.  We will be changing the callers of non-normal
  12269. hooks so that they can handle localness; this has to be done one by
  12270. one.
  12271.  
  12272. This function does nothing if HOOK is already local in the current
  12273. buffer.
  12274.  
  12275. Do not use `make-local-variable' to make a hook variable buffer-local.
  12276. Fadd-hook
  12277. Add to the value of HOOK the function FUNCTION.
  12278. FUNCTION is not added if already present.
  12279. FUNCTION is added (if necessary) at the beginning of the hook list
  12280. unless the optional argument APPEND is non-nil, in which case
  12281. FUNCTION is added at the end.
  12282.  
  12283. The optional fourth argument, LOCAL, if non-nil, says to modify
  12284. the hook's buffer-local value rather than its default value.
  12285. This makes no difference if the hook is not buffer-local.
  12286. To make a hook variable buffer-local, always use
  12287. `make-local-hook', not `make-local-variable'.
  12288.  
  12289. HOOK should be a symbol, and FUNCTION may be any valid function.  If
  12290. HOOK is void, it is first set to nil.  If HOOK's value is a single
  12291. function, it is changed to a list of functions.
  12292. Fremove-hook
  12293. Remove from the value of HOOK the function FUNCTION.
  12294. HOOK should be a symbol, and FUNCTION may be any valid function.  If
  12295. FUNCTION isn't the value of HOOK, or, if FUNCTION doesn't appear in the
  12296. list of hooks to run in HOOK, then nothing is done.  See `add-hook'.
  12297.  
  12298. The optional third argument, LOCAL, if non-nil, says to modify
  12299. the hook's buffer-local value rather than its default value.
  12300. This makes no difference if the hook is not buffer-local.
  12301. To make a hook variable buffer-local, always use
  12302. `make-local-hook', not `make-local-variable'.
  12303. Fadd-to-list
  12304. Add to the value of LIST-VAR the element ELEMENT if it isn't there yet.
  12305. The test for presence of ELEMENT is done with `equal'.
  12306. If you want to use `add-to-list' on a variable that is not defined
  12307. until a certain package is loaded, you should put the call to `add-to-list'
  12308. into a hook function that will be run only after loading the package.
  12309. `eval-after-load' provides one way to do this.  In some cases
  12310. other hooks, such as major mode hooks, can do the job.
  12311. Vkill-buffer-hook
  12312. Function or functions to be called when a buffer is killed.
  12313. The value of this variable may be buffer-local.
  12314. The buffer about to be killed is current when this hook is run.
  12315. Vkill-emacs-hook
  12316. Function or functions to be called when `kill-emacs' is called,
  12317. just before emacs is actually killed.
  12318. Freplace-in-string
  12319. Replaces all matches in STR for REGEXP with NEWTEXT string,
  12320.  and returns the new string.
  12321. Optional LITERAL non-nil means do a literal replacement.
  12322. Otherwise treat \ in NEWTEXT string as special:
  12323.   \& means substitute original matched text,
  12324.   \N means substitute match for (...) number N,
  12325.   \\ means insert one \.
  12326. Fsplit-string
  12327. Return a list of substrings of STRING which are separated by PATTERN.
  12328. If PATTERN is omitted, it defaults to "[ \f\t\n\r\v]+".
  12329. Fwith-output-to-string
  12330. Collect output to `standard-output' while evaluating FORMS and return
  12331. it as a string.
  12332. Fwith-current-buffer
  12333. Execute the forms in BODY with BUFFER as the current buffer.
  12334. The value returned is the value of the last form in BODY.
  12335. See also `with-temp-buffer'.
  12336. Fwith-temp-file
  12337. Create a new buffer, evaluate FORMS there, and write the buffer to FILE.
  12338. The value of the last form in FORMS is returned, like `progn'.
  12339. See also `with-temp-buffer'.
  12340. Fwith-temp-buffer
  12341. Create a temporary buffer, and evaluate FORMS there like `progn'.
  12342. See also `with-temp-file' and `with-output-to-string'.
  12343. Fwith-string-as-buffer-contents
  12344. With the contents of the current buffer being STR, run BODY.
  12345. Returns the new contents of the buffer, as modified by BODY.
  12346. The original current buffer is restored afterwards.
  12347. Finsert-face
  12348. Insert STRING and highlight with FACE.  Returns the extent created.
  12349. Fplist-to-alist
  12350. Convert property list PLIST into the equivalent association-list form.
  12351. The alist is returned.  This converts from
  12352.  
  12353. (a 1 b 2 c 3)
  12354.  
  12355. into
  12356.  
  12357. ((a . 1) (b . 2) (c . 3))
  12358.  
  12359. The original plist is not modified.  See also `destructive-plist-to-alist'.
  12360. Fdestructive-plist-to-alist
  12361. Convert property list PLIST into the equivalent association-list form.
  12362. The alist is returned.  This converts from
  12363.  
  12364. (a 1 b 2 c 3)
  12365.  
  12366. into
  12367.  
  12368. ((a . 1) (b . 2) (c . 3))
  12369.  
  12370. The original plist is destroyed in the process of constructing the alist.
  12371. See also `plist-to-alist'.
  12372. Falist-to-plist
  12373. Convert association list ALIST into the equivalent property-list form.
  12374. The plist is returned.  This converts from
  12375.  
  12376. ((a . 1) (b . 2) (c . 3))
  12377.  
  12378. into
  12379.  
  12380. (a 1 b 2 c 3)
  12381.  
  12382. The original alist is not modified.  See also `destructive-alist-to-plist'.
  12383. Fputf
  12384. Add property PROP to plist PLIST with value VAL.
  12385. Analogous to (setq PLIST (plist-put PLIST PROP VAL)).
  12386. Flaxputf
  12387. Add property PROP to lax plist LAX-PLIST with value VAL.
  12388. Analogous to (setq LAX-PLIST (lax-plist-put LAX-PLIST PROP VAL)).
  12389. Flaxremf
  12390. Remove property PROP from lax plist LAX-PLIST.
  12391. Analogous to (setq LAX-PLIST (lax-plist-remprop LAX-PLIST PROP)).
  12392. Ferror
  12393. Signal an error, making error message by passing all args to `format'.
  12394. This error is not continuable: you cannot continue execution after the
  12395. error using the debugger `r' command.  See also `cerror'.
  12396. Fcerror
  12397. Like `error' but signals a continuable error.
  12398. Fcheck-argument-type
  12399. Check that ARGUMENT satisfies PREDICATE.
  12400. If not, signal a continuable `wrong-type-argument' error until the
  12401. returned value satisfies PREDICATE, and assign the returned value
  12402. to ARGUMENT.
  12403. Fsignal-error
  12404. Signal a non-continuable error.  Args are ERROR-SYMBOL, and associated DATA.
  12405. An error symbol is a symbol defined using `define-error'.
  12406. DATA should be a list.  Its elements are printed as part of the error message.
  12407. If the signal is handled, DATA is made available to the handler.
  12408. See also `signal', and the functions to handle errors: `condition-case'
  12409. and `call-with-condition-handler'.
  12410. Fdefine-error
  12411. Define a new error, denoted by ERROR-SYM.
  12412. DOC-STRING is an informative message explaining the error, and will be
  12413. printed out when an unhandled error occurs.
  12414. ERROR-SYM is a sub-error of INHERITS-FROM (which defaults to `error').
  12415.  
  12416. [`define-error' internally works by putting on ERROR-SYM an `error-message'
  12417. property whose value is DOC-STRING, and an `error-conditions' property
  12418. that is a list of ERROR-SYM followed by each of its super-errors, up
  12419. to and including `error'.  You will sometimes see code that sets this up
  12420. directly rather than calling `define-error', but you should *not* do this
  12421. yourself.]
  12422. Fbuffer-substring-no-properties
  12423. Return the text from BEG to END, without text properties, as a string.
  12424. Fget-buffer-window-list
  12425. Return windows currently displaying BUFFER, or nil if none.
  12426. See `walk-windows' for the meaning of MINIBUF and FRAME.
  12427. Fignore
  12428. Do nothing and return nil.
  12429. This function accepts any number of arguments, but ignores them.
  12430. Ffunctionp
  12431. Non-nil if OBJECT can be called as a function.
  12432. Feval-after-load
  12433. Arrange that, if FILE is ever loaded, FORM will be run at that time.
  12434. This makes or adds to an entry on `after-load-alist'.
  12435. If FILE is already loaded, evaluate FORM right now.
  12436. It does nothing if FORM is already on the list for FILE.
  12437. FILE should be the name of a library, with no directory name.
  12438. Feval-next-after-load
  12439. Read the following input sexp, and run it whenever FILE is loaded.
  12440. This makes or adds to an entry on `after-load-alist'.
  12441. FILE should be the name of a library, with no directory name.
  12442. Vcase-replace
  12443. *Non-nil means `query-replace' should preserve case in replacements.
  12444. What this means is that `query-replace' will change the case of the
  12445. replacement text so that it matches the text that was replaced.
  12446. If this variable is nil, the replacement text will be inserted
  12447. exactly as it was specified by the user, irrespective of the case
  12448. of the text that was replaced.
  12449.  
  12450. Note that this flag has no effect if `case-fold-search' is nil,
  12451. or if the replacement text has any uppercase letters in it.
  12452. Vquery-replace-interactive
  12453. Non-nil means `query-replace' uses the last search string.
  12454. That becomes the "string to replace".
  12455. Fquery-replace
  12456. Replace some occurrences of FROM-STRING with TO-STRING.
  12457. As each match is found, the user must type a character saying
  12458. what to do with it.  For directions, type \[help-command] at that time.
  12459.  
  12460. If `query-replace-interactive' is non-nil, the last incremental search
  12461. string is used as FROM-STRING--you don't have to specify it with the
  12462. minibuffer.
  12463.  
  12464. Preserves case in each replacement if `case-replace' and `case-fold-search'
  12465. are non-nil and FROM-STRING has no uppercase letters.
  12466. (Preserving case means that if the string matched is all caps, or capitalized,
  12467. then its replacement is upcased or capitalized.)
  12468.  
  12469. Third arg DELIMITED (prefix arg if interactive), if non-nil, means replace
  12470. only matches surrounded by word boundaries.
  12471.  
  12472. To customize possible responses, change the "bindings" in `query-replace-map'.
  12473. Fquery-replace-regexp
  12474. Replace some things after point matching REGEXP with TO-STRING.
  12475. As each match is found, the user must type a character saying
  12476. what to do with it.  For directions, type \[help-command] at that time.
  12477.  
  12478. If `query-replace-interactive' is non-nil, the last incremental search
  12479. regexp is used as REGEXP--you don't have to specify it with the
  12480. minibuffer.
  12481.  
  12482. Preserves case in each replacement if `case-replace' and `case-fold-search'
  12483. are non-nil and REGEXP has no uppercase letters.
  12484. Third arg DELIMITED (prefix arg if interactive), if non-nil, means replace
  12485. only matches surrounded by word boundaries.
  12486. In TO-STRING, `\&' stands for whatever matched the whole of REGEXP,
  12487. and `\=\N' (where N is a digit) stands for
  12488.  whatever what matched the Nth `\(...\)' in REGEXP.
  12489. Fmap-query-replace-regexp
  12490. Replace some matches for REGEXP with various strings, in rotation.
  12491. The second argument TO-STRINGS contains the replacement strings, separated
  12492. by spaces.  This command works like `query-replace-regexp' except
  12493. that each successive replacement uses the next successive replacement string,
  12494. wrapping around from the last such string to the first.
  12495.  
  12496. Non-interactively, TO-STRINGS may be a list of replacement strings.
  12497.  
  12498. If `query-replace-interactive' is non-nil, the last incremental search
  12499. regexp is used as REGEXP--you don't have to specify it with the minibuffer.
  12500.  
  12501. A prefix argument N says to use each replacement string N times
  12502. before rotating to the next.
  12503. Freplace-string
  12504. Replace occurrences of FROM-STRING with TO-STRING.
  12505. Preserve case in each match if `case-replace' and `case-fold-search'
  12506. are non-nil and FROM-STRING has no uppercase letters.
  12507. (Preserving case means that if the string matched is all caps, or capitalized,
  12508. then its replacement is upcased or capitalized.)
  12509.  
  12510. Third arg DELIMITED (prefix arg if interactive), if non-nil, means replace
  12511. only matches surrounded by word boundaries.
  12512.  
  12513. If `query-replace-interactive' is non-nil, the last incremental search
  12514. string is used as FROM-STRING--you don't have to specify it with the
  12515. minibuffer.
  12516.  
  12517. This function is usually the wrong thing to use in a Lisp program.
  12518. What you probably want is a loop like this:
  12519.   (while (search-forward FROM-STRING nil t)
  12520.     (replace-match TO-STRING nil t))
  12521. which will run faster and will not set the mark or print anything.
  12522. Freplace-regexp
  12523. Replace things after point matching REGEXP with TO-STRING.
  12524. Preserve case in each match if `case-replace' and `case-fold-search'
  12525. are non-nil and REGEXP has no uppercase letters.
  12526. (Preserving case means that if the string matched is all caps, or capitalized,
  12527. then its replacement is upcased or capitalized.)
  12528.  
  12529. Third arg DELIMITED (prefix arg if interactive), if non-nil, means replace
  12530. only matches surrounded by word boundaries.
  12531. In TO-STRING, `\&' stands for whatever matched the whole of REGEXP,
  12532. and `\=\N' (where N is a digit) stands for
  12533.  whatever what matched the Nth `\(...\)' in REGEXP.
  12534.  
  12535. If `query-replace-interactive' is non-nil, the last incremental search
  12536. regexp is used as REGEXP--you don't have to specify it with the minibuffer.
  12537.  
  12538. This function is usually the wrong thing to use in a Lisp program.
  12539. What you probably want is a loop like this:
  12540.   (while (re-search-forward REGEXP nil t)
  12541.     (replace-match TO-STRING nil nil))
  12542. which will run faster and will not set the mark or print anything.
  12543. Vregexp-history
  12544. History list for some commands that read regular expressions.
  12545. Fdelete-non-matching-lines
  12546. Delete all lines except those containing matches for REGEXP.
  12547. A match split across lines preserves all the lines it lies in.
  12548. Applies to all lines after point.
  12549. Fdelete-matching-lines
  12550. Delete lines containing matches for REGEXP.
  12551. If a match is split across lines, all the lines it lies in are deleted.
  12552. Applies to lines after point.
  12553. Fcount-matches
  12554. Print number of matches for REGEXP following point.
  12555. Foccur-mode
  12556. Major mode for output from \[occur].
  12557. \<occur-mode-map>Move point to one of the items in this buffer, then use
  12558. \[occur-mode-goto-occurrence] to go to the occurrence that the item refers to.
  12559. Alternatively, click \[occur-mode-mouse-goto] on an item to go to it.
  12560.  
  12561. \{occur-mode-map}
  12562. Foccur-mode-mouse-goto
  12563. Go to the occurrence highlighted by mouse.
  12564. This function is only reasonable when bound to a mouse key in the occur buffer
  12565. Foccur-mode-goto-occurrence
  12566. Go to the occurrence the current line describes.
  12567. Vlist-matching-lines-default-context-lines
  12568. *Default number of context lines to include around a `list-matching-lines'
  12569. match.  A negative number means to include that many lines before the match.
  12570. A positive number means to include that many lines both before and after.
  12571. Vlist-matching-lines-whole-buffer
  12572. If t, occur operates on whole buffer, otherwise occur starts from point.
  12573. default is t.
  12574. Flist-matching-lines
  12575. Show all lines in the current buffer containing a match for REGEXP.
  12576.  
  12577. If a match spreads across multiple lines, all those lines are shown.
  12578.  
  12579. If variable `list-matching-lines-whole-buffer' is non-nil, the entire buffer is
  12580. searched, otherwise search begins at point.
  12581.  
  12582. Each line is displayed with NLINES lines before and after, or -NLINES
  12583. before if NLINES is negative.
  12584. NLINES defaults to `list-matching-lines-default-context-lines'.
  12585. Interactively it is the prefix arg.
  12586.  
  12587. The lines are shown in a buffer named `*Occur*'.
  12588. It serves as a menu to find any of the occurrences in this buffer.
  12589. \[describe-mode] in that buffer will explain how.
  12590. Vquery-replace-help
  12591. Help message while in query-replace
  12592. Vquery-replace-map
  12593. Keymap that defines the responses to questions in `query-replace'.
  12594. The "bindings" in this map are not commands; they are answers.
  12595. The valid answers include `act', `skip', `act-and-show',
  12596. `exit', `act-and-exit', `edit', `delete-and-edit', `recenter',
  12597. `automatic', `backup', `exit-prefix', and `help'.
  12598. Fperform-replace
  12599. Subroutine of `query-replace'.  Its complexity handles interactive queries.
  12600. Don't use this in your own program unless you want to query and set the mark
  12601. just as `query-replace' does.  Instead, write a simple loop like this:
  12602.   (while (re-search-forward "foo[     ]+bar" nil t)
  12603.     (replace-match "foobar" nil nil))
  12604. which will run faster and probably do exactly what you want.
  12605. Vquery-replace-highlight
  12606. *Non-nil means to highlight words during query replacement.
  12607. Fmatch-string
  12608. Return string of text matched by last search.
  12609. NUM specifies which parenthesized expression in the last regexp.
  12610.  Value is nil if NUMth pair didn't match, or there were less than NUM pairs.
  12611. Zero means the entire text matched by the whole regexp or whole string.
  12612. STRING should be given if the last search was by `string-match' on STRING.
  12613. Fsave-match-data
  12614. Execute BODY forms, restoring the global value of the match data.
  12615. Vcustom-print-functions
  12616. This is a list of functions that format user objects for printing.
  12617. Each function is called in turn with three arguments: the object, the
  12618. stream, and the print level (currently ignored).  If it is able to
  12619. print the object it returns true; otherwise it returns nil and the
  12620. printer proceeds to the next function on the list.
  12621.  
  12622. This variable is not used at present, but it is defined in hopes that
  12623. a future Emacs interpreter will be able to use it.
  12624. Feql
  12625. T if the two args are the same Lisp object.
  12626. Floating-point numbers of equal value are `eql', but they may not be `eq'.
  12627. Fincf
  12628. (incf PLACE [X]): increment PLACE by X (1 by default).
  12629. PLACE may be a symbol, or any generalized variable allowed by `setf'.
  12630. The return value is the incremented value of PLACE.
  12631. Fdecf
  12632. (decf PLACE [X]): decrement PLACE by X (1 by default).
  12633. PLACE may be a symbol, or any generalized variable allowed by `setf'.
  12634. The return value is the decremented value of PLACE.
  12635. Fpop
  12636. (pop PLACE): remove and return the head of the list stored in PLACE.
  12637. Analogous to (prog1 (car PLACE) (setf PLACE (cdr PLACE))), though more
  12638. careful about evaluating each argument only once and in the right order.
  12639. PLACE may be a symbol, or any generalized variable allowed by `setf'.
  12640. Fpush
  12641. (push X PLACE): insert X at the head of the list stored in PLACE.
  12642. Analogous to (setf PLACE (cons X PLACE)), though more careful about
  12643. evaluating each argument only once and in the right order.  PLACE may
  12644. be a symbol, or any generalized variable allowed by `setf'.
  12645. Fpushnew
  12646. (pushnew X PLACE): insert X at the head of the list if not already there.
  12647. Like (push X PLACE), except that the list is unmodified if X is `eql' to
  12648. an element already on the list.
  12649. Keywords supported:  :test :test-not :key
  12650. Fwhen
  12651. (when COND BODY...): if COND yields non-nil, do BODY, else return nil.
  12652. Funless
  12653. (unless COND BODY...): if COND yields nil, do BODY, else return nil.
  12654. Fcl-macroexpand
  12655. Return result of expanding macros at top level of FORM.
  12656. If FORM is not a macro call, it is returned unchanged.
  12657. Otherwise, the macro is expanded and the expansion is considered
  12658. in place of FORM.  When a non-macro-call results, it is returned.
  12659.  
  12660. The second optional arg ENVIRONMENT species an environment of macro
  12661. definitions to shadow the loaded ones for use in file byte-compilation.
  12662. Ffloatp-safe
  12663. T if OBJECT is a floating point number.
  12664. On Emacs versions that lack floating-point support, this function
  12665. always returns nil.
  12666. Fplusp
  12667. T if NUMBER is positive.
  12668. Fminusp
  12669. T if NUMBER is negative.
  12670. Foddp
  12671. T if INTEGER is odd.
  12672. Fevenp
  12673. T if INTEGER is even.
  12674. Fcl-abs
  12675. Return the absolute value of ARG.
  12676. Fmapcar*
  12677. Apply FUNCTION to each element of SEQ, and make a list of the results.
  12678. If there are several SEQs, FUNCTION is called with that many arguments,
  12679. and mapping stops as soon as the shortest list runs out.  With just one
  12680. SEQ, this is like `mapcar'.  With several, it is like the Common Lisp
  12681. `mapcar' function extended to arbitrary sequence types.
  12682. Fsecond
  12683. Return the second element of the list LIST.
  12684. Fthird
  12685. Return the third element of the list LIST.
  12686. Ffourth
  12687. Return the fourth element of the list LIST.
  12688. Ffifth
  12689. Return the fifth element of the list LIST.
  12690. Fsixth
  12691. Return the sixth element of the list LIST.
  12692. Fseventh
  12693. Return the seventh element of the list LIST.
  12694. Feighth
  12695. Return the eighth element of the list LIST.
  12696. Fninth
  12697. Return the ninth element of the list LIST.
  12698. Ftenth
  12699. Return the tenth element of the list LIST.
  12700. Fcaar
  12701. Return the `car' of the `car' of X.
  12702. Fcadr
  12703. Return the `car' of the `cdr' of X.
  12704. Fcdar
  12705. Return the `cdr' of the `car' of X.
  12706. Fcddr
  12707. Return the `cdr' of the `cdr' of X.
  12708. Fcaaar
  12709. Return the `car' of the `car' of the `car' of X.
  12710. Fcaadr
  12711. Return the `car' of the `car' of the `cdr' of X.
  12712. Fcadar
  12713. Return the `car' of the `cdr' of the `car' of X.
  12714. Fcaddr
  12715. Return the `car' of the `cdr' of the `cdr' of X.
  12716. Fcdaar
  12717. Return the `cdr' of the `car' of the `car' of X.
  12718. Fcdadr
  12719. Return the `cdr' of the `car' of the `cdr' of X.
  12720. Fcddar
  12721. Return the `cdr' of the `cdr' of the `car' of X.
  12722. Fcdddr
  12723. Return the `cdr' of the `cdr' of the `cdr' of X.
  12724. Fcaaaar
  12725. Return the `car' of the `car' of the `car' of the `car' of X.
  12726. Fcaaadr
  12727. Return the `car' of the `car' of the `car' of the `cdr' of X.
  12728. Fcaadar
  12729. Return the `car' of the `car' of the `cdr' of the `car' of X.
  12730. Fcaaddr
  12731. Return the `car' of the `car' of the `cdr' of the `cdr' of X.
  12732. Fcadaar
  12733. Return the `car' of the `cdr' of the `car' of the `car' of X.
  12734. Fcadadr
  12735. Return the `car' of the `cdr' of the `car' of the `cdr' of X.
  12736. Fcaddar
  12737. Return the `car' of the `cdr' of the `cdr' of the `car' of X.
  12738. Fcadddr
  12739. Return the `car' of the `cdr' of the `cdr' of the `cdr' of X.
  12740. Fcdaaar
  12741. Return the `cdr' of the `car' of the `car' of the `car' of X.
  12742. Fcdaadr
  12743. Return the `cdr' of the `car' of the `car' of the `cdr' of X.
  12744. Fcdadar
  12745. Return the `cdr' of the `car' of the `cdr' of the `car' of X.
  12746. Fcdaddr
  12747. Return the `cdr' of the `car' of the `cdr' of the `cdr' of X.
  12748. Fcddaar
  12749. Return the `cdr' of the `cdr' of the `car' of the `car' of X.
  12750. Fcddadr
  12751. Return the `cdr' of the `cdr' of the `car' of the `cdr' of X.
  12752. Fcdddar
  12753. Return the `cdr' of the `cdr' of the `cdr' of the `car' of X.
  12754. Fcddddr
  12755. Return the `cdr' of the `cdr' of the `cdr' of the `cdr' of X.
  12756. Flast
  12757. Returns the last link in the list LIST.
  12758. With optional argument N, returns Nth-to-last link (default 1).
  12759. Fbutlast
  12760. Returns a copy of LIST with the last N elements removed.
  12761. Fnbutlast
  12762. Modifies LIST to remove the last N elements.
  12763. Flist*
  12764. Return a new list with specified args as elements, cons'd to last arg.
  12765. Thus, `(list* A B C D)' is equivalent to `(nconc (list A B C) D)', or to
  12766. `(cons A (cons B (cons C D)))'.
  12767. Fldiff
  12768. Return a copy of LIST with the tail SUBLIST removed.
  12769. Fcopy-list
  12770. Return a copy of a list, which may be a dotted list.
  12771. The elements of the list are not copied, just the list structure itself.
  12772. Fadjoin
  12773. Return ITEM consed onto the front of LIST only if it's not already there.
  12774. Otherwise, return LIST unmodified.
  12775. Keywords supported:  :test :test-not :key
  12776. Fsubst
  12777. Substitute NEW for OLD everywhere in TREE (non-destructively).
  12778. Return a copy of TREE with all elements `eql' to OLD replaced by NEW.
  12779. Keywords supported:  :test :test-not :key
  12780. Fcl-add-hook
  12781. Add to hook variable HOOK the function FUNC.
  12782. FUNC is not added if it already appears on the list stored in HOOK.
  12783. Fcoerce
  12784. Coerce OBJECT to type TYPE.
  12785. TYPE is a Common Lisp type specifier.
  12786. Fequalp
  12787. T if two Lisp objects have similar structures and contents.
  12788. This is like `equal', except that it accepts numerically equal
  12789. numbers of different types (float vs. integer), and also compares
  12790. strings case-insensitively.
  12791. Fmap
  12792. Map a function across one or more sequences, returning a sequence.
  12793. TYPE is the sequence type to return, FUNC is the function, and SEQS
  12794. are the argument sequences.
  12795. Fmaplist
  12796. Map FUNC to each sublist of LIST or LISTS.
  12797. Like `mapcar', except applies to lists and their cdr's rather than to
  12798. the elements themselves.
  12799. Fmapl
  12800. Like `maplist', but does not accumulate values returned by the function.
  12801. Fmapcan
  12802. Like `mapcar', but nconc's together the values returned by the function.
  12803. Fmapcon
  12804. Like `maplist', but nconc's together the values returned by the function.
  12805. Fsome
  12806. Return true if PREDICATE is true of any element of SEQ or SEQs.
  12807. If so, return the true (non-nil) value returned by PREDICATE.
  12808. Fevery
  12809. Return true if PREDICATE is true of every element of SEQ or SEQs.
  12810. Fnotany
  12811. Return true if PREDICATE is false of every element of SEQ or SEQs.
  12812. Fnotevery
  12813. Return true if PREDICATE is false of some element of SEQ or SEQs.
  12814. Fgcd
  12815. Return the greatest common divisor of the arguments.
  12816. Flcm
  12817. Return the least common multiple of the arguments.
  12818. Fisqrt
  12819. Return the integer square root of the argument.
  12820. Fcl-expt
  12821. Return X raised to the power of Y.  Works only for integer arguments.
  12822. Ffloor*
  12823. Return a list of the floor of X and the fractional part of X.
  12824. With two arguments, return floor and remainder of their quotient.
  12825. Fceiling*
  12826. Return a list of the ceiling of X and the fractional part of X.
  12827. With two arguments, return ceiling and remainder of their quotient.
  12828. Ftruncate*
  12829. Return a list of the integer part of X and the fractional part of X.
  12830. With two arguments, return truncation and remainder of their quotient.
  12831. Fround*
  12832. Return a list of X rounded to the nearest integer and the remainder.
  12833. With two arguments, return rounding and remainder of their quotient.
  12834. Fmod*
  12835. The remainder of X divided by Y, with the same sign as Y.
  12836. Frem*
  12837. The remainder of X divided by Y, with the same sign as X.
  12838. Fsignum
  12839. Return 1 if A is positive, -1 if negative, 0 if zero.
  12840. Frandom*
  12841. Return a random nonnegative number less than LIM, an integer or float.
  12842. Optional second arg STATE is a random-state object.
  12843. Fmake-random-state
  12844. Return a copy of random-state STATE, or of `*random-state*' if omitted.
  12845. If STATE is t, return a new state object seeded from the time of day.
  12846. Frandom-state-p
  12847. Return t if OBJECT is a random-state object.
  12848. Fconcatenate
  12849. Concatenate, into a sequence of type TYPE, the argument SEQUENCES.
  12850. Frevappend
  12851. Equivalent to (append (reverse X) Y).
  12852. Fnreconc
  12853. Equivalent to (nconc (nreverse X) Y).
  12854. Flist-length
  12855. Return the length of a list.  Return nil if list is circular.
  12856. Ftailp
  12857. Return true if SUBLIST is a tail of LIST.
  12858. Fcl-copy-tree
  12859. Make a copy of TREE.
  12860. If TREE is a cons cell, this recursively copies both its car and its cdr.
  12861. Contrast to copy-sequence, which copies only along the cdrs.  With second
  12862. argument VECP, this copies vectors as well as conses.
  12863. Fget*
  12864. Return the value of SYMBOL's PROPNAME property, or DEFAULT if none.
  12865. Fgetf
  12866. Search PROPLIST for property PROPNAME; return its value or DEFAULT.
  12867. PROPLIST is a list of the sort returned by `symbol-plist'.
  12868. Fcl-remprop
  12869. Remove from SYMBOL's plist the property PROP and its value.
  12870. Fmake-hash-table
  12871. Make an empty Common Lisp-style hash-table.
  12872. If :test is `eq', `eql', or `equal', this can use XEmacs built-in hash-tables.
  12873. In Emacs 19, or with a different test, this internally uses a-lists.
  12874. Keywords supported:  :test :size
  12875. The Common Lisp keywords :rehash-size and :rehash-threshold are ignored.
  12876. Fhash-table-p
  12877. Return t if OBJECT is a hash table.
  12878. Fcl-gethash
  12879. Look up KEY in HASH-TABLE; return corresponding value, or DEFAULT.
  12880. Fcl-remhash
  12881. Remove KEY from HASH-TABLE.
  12882. Fcl-clrhash
  12883. Clear HASH-TABLE.
  12884. Fcl-maphash
  12885. Call FUNCTION on keys and values from HASH-TABLE.
  12886. Fhash-table-count
  12887. Return the number of entries in HASH-TABLE.
  12888. Fcl-prettyprint
  12889. Insert a pretty-printed rendition of a Lisp FORM in current buffer.
  12890. Fcl-macroexpand-all
  12891. Expand all macro calls through a Lisp FORM.
  12892. This also does some trivial optimizations to make the form prettier.
  12893. Freduce
  12894. Reduce two-argument FUNCTION across SEQUENCE.
  12895. Keywords supported:  :start :end :from-end :initial-value :key
  12896. Ffill
  12897. Fill the elements of SEQ with ITEM.
  12898. Keywords supported:  :start :end
  12899. Freplace
  12900. Replace the elements of SEQ1 with the elements of SEQ2.
  12901. SEQ1 is destructively modified, then returned.
  12902. Keywords supported:  :start1 :end1 :start2 :end2
  12903. Fremove*
  12904. Remove all occurrences of ITEM in SEQ.
  12905. This is a non-destructive function; it makes a copy of SEQ if necessary
  12906. to avoid corrupting the original SEQ.
  12907. Keywords supported:  :test :test-not :key :count :start :end :from-end
  12908. Fremove-if
  12909. Remove all items satisfying PREDICATE in SEQ.
  12910. This is a non-destructive function; it makes a copy of SEQ if necessary
  12911. to avoid corrupting the original SEQ.
  12912. Keywords supported:  :key :count :start :end :from-end
  12913. Fremove-if-not
  12914. Remove all items not satisfying PREDICATE in SEQ.
  12915. This is a non-destructive function; it makes a copy of SEQ if necessary
  12916. to avoid corrupting the original SEQ.
  12917. Keywords supported:  :key :count :start :end :from-end
  12918. Fdelete*
  12919. Remove all occurrences of ITEM in SEQ.
  12920. This is a destructive function; it reuses the storage of SEQ whenever possible.
  12921. Keywords supported:  :test :test-not :key :count :start :end :from-end
  12922. Fdelete-if
  12923. Remove all items satisfying PREDICATE in SEQ.
  12924. This is a destructive function; it reuses the storage of SEQ whenever possible.
  12925. Keywords supported:  :key :count :start :end :from-end
  12926. Fdelete-if-not
  12927. Remove all items not satisfying PREDICATE in SEQ.
  12928. This is a destructive function; it reuses the storage of SEQ whenever possible.
  12929. Keywords supported:  :key :count :start :end :from-end
  12930. Fremove
  12931. Remove all occurrences of ITEM in SEQ, testing with `equal'
  12932. This is a non-destructive function; it makes a copy of SEQ if necessary
  12933. to avoid corrupting the original SEQ.
  12934. Also see: `remove*', `delete', `delete*'
  12935. Fremq
  12936. Remove all occurances of ELT in LIST, comparing with `eq'.
  12937. This is a non-destructive function; it makes a copy of LIST to avoid
  12938. corrupting the original LIST.
  12939. Also see: `delq', `delete', `delete*', `remove', `remove*'.
  12940. Fremove-duplicates
  12941. Return a copy of SEQ with all duplicate elements removed.
  12942. Keywords supported:  :test :test-not :key :start :end :from-end
  12943. Fdelete-duplicates
  12944. Remove all duplicate elements from SEQ (destructively).
  12945. Keywords supported:  :test :test-not :key :start :end :from-end
  12946. Fsubstitute
  12947. Substitute NEW for OLD in SEQ.
  12948. This is a non-destructive function; it makes a copy of SEQ if necessary
  12949. to avoid corrupting the original SEQ.
  12950. Keywords supported:  :test :test-not :key :count :start :end :from-end
  12951. Fsubstitute-if
  12952. Substitute NEW for all items satisfying PREDICATE in SEQ.
  12953. This is a non-destructive function; it makes a copy of SEQ if necessary
  12954. to avoid corrupting the original SEQ.
  12955. Keywords supported:  :key :count :start :end :from-end
  12956. Fsubstitute-if-not
  12957. Substitute NEW for all items not satisfying PREDICATE in SEQ.
  12958. This is a non-destructive function; it makes a copy of SEQ if necessary
  12959. to avoid corrupting the original SEQ.
  12960. Keywords supported:  :key :count :start :end :from-end
  12961. Fnsubstitute
  12962. Substitute NEW for OLD in SEQ.
  12963. This is a destructive function; it reuses the storage of SEQ whenever possible.
  12964. Keywords supported:  :test :test-not :key :count :start :end :from-end
  12965. Fnsubstitute-if
  12966. Substitute NEW for all items satisfying PREDICATE in SEQ.
  12967. This is a destructive function; it reuses the storage of SEQ whenever possible.
  12968. Keywords supported:  :key :count :start :end :from-end
  12969. Fnsubstitute-if-not
  12970. Substitute NEW for all items not satisfying PREDICATE in SEQ.
  12971. This is a destructive function; it reuses the storage of SEQ whenever possible.
  12972. Keywords supported:  :key :count :start :end :from-end
  12973. Ffind
  12974. Find the first occurrence of ITEM in LIST.
  12975. Return the matching ITEM, or nil if not found.
  12976. Keywords supported:  :test :test-not :key :start :end :from-end
  12977. Ffind-if
  12978. Find the first item satisfying PREDICATE in LIST.
  12979. Return the matching ITEM, or nil if not found.
  12980. Keywords supported:  :key :start :end :from-end
  12981. Ffind-if-not
  12982. Find the first item not satisfying PREDICATE in LIST.
  12983. Return the matching ITEM, or nil if not found.
  12984. Keywords supported:  :key :start :end :from-end
  12985. Fposition
  12986. Find the first occurrence of ITEM in LIST.
  12987. Return the index of the matching item, or nil if not found.
  12988. Keywords supported:  :test :test-not :key :start :end :from-end
  12989. Fposition-if
  12990. Find the first item satisfying PREDICATE in LIST.
  12991. Return the index of the matching item, or nil if not found.
  12992. Keywords supported:  :key :start :end :from-end
  12993. Fposition-if-not
  12994. Find the first item not satisfying PREDICATE in LIST.
  12995. Return the index of the matching item, or nil if not found.
  12996. Keywords supported:  :key :start :end :from-end
  12997. Fcount
  12998. Count the number of occurrences of ITEM in LIST.
  12999. Keywords supported:  :test :test-not :key :start :end
  13000. Fcount-if
  13001. Count the number of items satisfying PREDICATE in LIST.
  13002. Keywords supported:  :key :start :end
  13003. Fcount-if-not
  13004. Count the number of items not satisfying PREDICATE in LIST.
  13005. Keywords supported:  :key :start :end
  13006. Fmismatch
  13007. Compare SEQ1 with SEQ2, return index of first mismatching element.
  13008. Return nil if the sequences match.  If one sequence is a prefix of the
  13009. other, the return value indicates the end of the shorted sequence.
  13010. Keywords supported:  :test :test-not :key :start1 :end1 :start2 :end2 :from-end
  13011. Fsearch
  13012. Search for SEQ1 as a subsequence of SEQ2.
  13013. Return the index of the leftmost element of the first match found;
  13014. return nil if there are no matches.
  13015. Keywords supported:  :test :test-not :key :start1 :end1 :start2 :end2 :from-end
  13016. Fsort*
  13017. Sort the argument SEQUENCE according to PREDICATE.
  13018. This is a destructive function; it reuses the storage of SEQUENCE if possible.
  13019. Keywords supported:  :key
  13020. Fstable-sort
  13021. Sort the argument SEQUENCE stably according to PREDICATE.
  13022. This is a destructive function; it reuses the storage of SEQUENCE if possible.
  13023. Keywords supported:  :key
  13024. Fmerge
  13025. Destructively merge the two sequences to produce a new sequence.
  13026. TYPE is the sequence type to return, SEQ1 and SEQ2 are the two
  13027. argument sequences, and PRED is a `less-than' predicate on the elements.
  13028. Keywords supported:  :key
  13029. Fmember*
  13030. Find the first occurrence of ITEM in LIST.
  13031. Return the sublist of LIST whose car is ITEM.
  13032. Keywords supported:  :test :test-not :key
  13033. Fmember-if
  13034. Find the first item satisfying PREDICATE in LIST.
  13035. Return the sublist of LIST whose car matches.
  13036. Keywords supported:  :key
  13037. Fmember-if-not
  13038. Find the first item not satisfying PREDICATE in LIST.
  13039. Return the sublist of LIST whose car matches.
  13040. Keywords supported:  :key
  13041. Fassoc*
  13042. Find the first item whose car matches ITEM in LIST.
  13043. Keywords supported:  :test :test-not :key
  13044. Fassoc-if
  13045. Find the first item whose car satisfies PREDICATE in LIST.
  13046. Keywords supported:  :key
  13047. Fassoc-if-not
  13048. Find the first item whose car does not satisfy PREDICATE in LIST.
  13049. Keywords supported:  :key
  13050. Frassoc*
  13051. Find the first item whose cdr matches ITEM in LIST.
  13052. Keywords supported:  :test :test-not :key
  13053. Frassoc-if
  13054. Find the first item whose cdr satisfies PREDICATE in LIST.
  13055. Keywords supported:  :key
  13056. Frassoc-if-not
  13057. Find the first item whose cdr does not satisfy PREDICATE in LIST.
  13058. Keywords supported:  :key
  13059. Funion
  13060. Combine LIST1 and LIST2 using a set-union operation.
  13061. The result list contains all items that appear in either LIST1 or LIST2.
  13062. This is a non-destructive function; it makes a copy of the data if necessary
  13063. to avoid corrupting the original LIST1 and LIST2.
  13064. Keywords supported:  :test :test-not :key
  13065. Fnunion
  13066. Combine LIST1 and LIST2 using a set-union operation.
  13067. The result list contains all items that appear in either LIST1 or LIST2.
  13068. This is a destructive function; it reuses the storage of LIST1 and LIST2
  13069. whenever possible.
  13070. Keywords supported:  :test :test-not :key
  13071. Fintersection
  13072. Combine LIST1 and LIST2 using a set-intersection operation.
  13073. The result list contains all items that appear in both LIST1 and LIST2.
  13074. This is a non-destructive function; it makes a copy of the data if necessary
  13075. to avoid corrupting the original LIST1 and LIST2.
  13076. Keywords supported:  :test :test-not :key
  13077. Fnintersection
  13078. Combine LIST1 and LIST2 using a set-intersection operation.
  13079. The result list contains all items that appear in both LIST1 and LIST2.
  13080. This is a destructive function; it reuses the storage of LIST1 and LIST2
  13081. whenever possible.
  13082. Keywords supported:  :test :test-not :key
  13083. Fset-difference
  13084. Combine LIST1 and LIST2 using a set-difference operation.
  13085. The result list contains all items that appear in LIST1 but not LIST2.
  13086. This is a non-destructive function; it makes a copy of the data if necessary
  13087. to avoid corrupting the original LIST1 and LIST2.
  13088. Keywords supported:  :test :test-not :key
  13089. Fnset-difference
  13090. Combine LIST1 and LIST2 using a set-difference operation.
  13091. The result list contains all items that appear in LIST1 but not LIST2.
  13092. This is a destructive function; it reuses the storage of LIST1 and LIST2
  13093. whenever possible.
  13094. Keywords supported:  :test :test-not :key
  13095. Fset-exclusive-or
  13096. Combine LIST1 and LIST2 using a set-exclusive-or operation.
  13097. The result list contains all items that appear in exactly one of LIST1, LIST2.
  13098. This is a non-destructive function; it makes a copy of the data if necessary
  13099. to avoid corrupting the original LIST1 and LIST2.
  13100. Keywords supported:  :test :test-not :key
  13101. Fnset-exclusive-or
  13102. Combine LIST1 and LIST2 using a set-exclusive-or operation.
  13103. The result list contains all items that appear in exactly one of LIST1, LIST2.
  13104. This is a destructive function; it reuses the storage of LIST1 and LIST2
  13105. whenever possible.
  13106. Keywords supported:  :test :test-not :key
  13107. Fsubsetp
  13108. True if LIST1 is a subset of LIST2.
  13109. I.e., if every element of LIST1 also appears in LIST2.
  13110. Keywords supported:  :test :test-not :key
  13111. Fsubst-if
  13112. Substitute NEW for elements matching PREDICATE in TREE (non-destructively).
  13113. Return a copy of TREE with all matching elements replaced by NEW.
  13114. Keywords supported:  :key
  13115. Fsubst-if-not
  13116. Substitute NEW for elts not matching PREDICATE in TREE (non-destructively).
  13117. Return a copy of TREE with all non-matching elements replaced by NEW.
  13118. Keywords supported:  :key
  13119. Fnsubst
  13120. Substitute NEW for OLD everywhere in TREE (destructively).
  13121. Any element of TREE which is `eql' to OLD is changed to NEW (via a call
  13122. to `setcar').
  13123. Keywords supported:  :test :test-not :key
  13124. Fnsubst-if
  13125. Substitute NEW for elements matching PREDICATE in TREE (destructively).
  13126. Any element of TREE which matches is changed to NEW (via a call to `setcar').
  13127. Keywords supported:  :key
  13128. Fnsubst-if-not
  13129. Substitute NEW for elements not matching PREDICATE in TREE (destructively).
  13130. Any element of TREE which matches is changed to NEW (via a call to `setcar').
  13131. Keywords supported:  :key
  13132. Fsublis
  13133. Perform substitutions indicated by ALIST in TREE (non-destructively).
  13134. Return a copy of TREE with all matching elements replaced.
  13135. Keywords supported:  :test :test-not :key
  13136. Fnsublis
  13137. Perform substitutions indicated by ALIST in TREE (destructively).
  13138. Any matching element of TREE is changed via a call to `setcar'.
  13139. Keywords supported:  :test :test-not :key
  13140. Ftree-equal
  13141. T if trees X and Y have `eql' leaves.
  13142. Atoms are compared by `eql'; cons cells are compared recursively.
  13143. Keywords supported:  :test :test-not :key
  13144. Fgensym
  13145. Generate a new uninterned symbol.
  13146. The name is made by appending a number to PREFIX, default "G".
  13147. Fgentemp
  13148. Generate a new interned symbol with a unique name.
  13149. The name is made by appending a number to PREFIX, default "G".
  13150. Fdefun*
  13151. (defun* NAME ARGLIST [DOCSTRING] BODY...): define NAME as a function.
  13152. Like normal `defun', except ARGLIST allows full Common Lisp conventions,
  13153. and BODY is implicitly surrounded by (block NAME ...).
  13154. Fdefmacro*
  13155. (defmacro* NAME ARGLIST [DOCSTRING] BODY...): define NAME as a macro.
  13156. Like normal `defmacro', except ARGLIST allows full Common Lisp conventions,
  13157. and BODY is implicitly surrounded by (block NAME ...).
  13158. Ffunction*
  13159. (function* SYMBOL-OR-LAMBDA): introduce a function.
  13160. Like normal `function', except that if argument is a lambda form, its
  13161. ARGLIST allows full Common Lisp conventions.
  13162. Feval-when
  13163. (eval-when (WHEN...) BODY...): control when BODY is evaluated.
  13164. If `compile' is in WHEN, BODY is evaluated when compiled at top-level.
  13165. If `load' is in WHEN, BODY is evaluated when loaded after top-level compile.
  13166. If `eval' is in WHEN, BODY is evaluated when interpreted or at non-top-level.
  13167. Fload-time-value
  13168. Like `progn', but evaluates the body at load time.
  13169. The result of the body appears to the compiler as a quoted constant.
  13170. Fcase
  13171. (case EXPR CLAUSES...): evals EXPR, chooses from CLAUSES on that value.
  13172. Each clause looks like (KEYLIST BODY...).  EXPR is evaluated and compared
  13173. against each key in each KEYLIST; the corresponding BODY is evaluated.
  13174. If no clause succeeds, case returns nil.  A single atom may be used in
  13175. place of a KEYLIST of one atom.  A KEYLIST of `t' or `otherwise' is
  13176. allowed only in the final clause, and matches if no other keys match.
  13177. Key values are compared by `eql'.
  13178. Fecase
  13179. (ecase EXPR CLAUSES...): like `case', but error if no case fits.
  13180. `otherwise'-clauses are not allowed.
  13181. Ftypecase
  13182. (typecase EXPR CLAUSES...): evals EXPR, chooses from CLAUSES on that value.
  13183. Each clause looks like (TYPE BODY...).  EXPR is evaluated and, if it
  13184. satisfies TYPE, the corresponding BODY is evaluated.  If no clause succeeds,
  13185. typecase returns nil.  A TYPE of `t' or `otherwise' is allowed only in the
  13186. final clause, and matches if no other keys match.
  13187. Fetypecase
  13188. (etypecase EXPR CLAUSES...): like `typecase', but error if no case fits.
  13189. `otherwise'-clauses are not allowed.
  13190. Fblock
  13191. (block NAME BODY...): define a lexically-scoped block named NAME.
  13192. NAME may be any symbol.  Code inside the BODY forms can call `return-from'
  13193. to jump prematurely out of the block.  This differs from `catch' and `throw'
  13194. in two respects:  First, the NAME is an unevaluated symbol rather than a
  13195. quoted symbol or other form; and second, NAME is lexically rather than
  13196. dynamically scoped:  Only references to it within BODY will work.  These
  13197. references may appear inside macro expansions, but not inside functions
  13198. called from BODY.
  13199. Freturn
  13200. (return [RESULT]): return from the block named nil.
  13201. This is equivalent to `(return-from nil RESULT)'.
  13202. Freturn-from
  13203. (return-from NAME [RESULT]): return from the block named NAME.
  13204. This jump out to the innermost enclosing `(block NAME ...)' form,
  13205. returning RESULT from that form (or nil if RESULT is omitted).
  13206. This is compatible with Common Lisp, but note that `defun' and
  13207. `defmacro' do not create implicit blocks as they do in Common Lisp.
  13208. Floop
  13209. (loop CLAUSE...): The Common Lisp `loop' macro.
  13210. Valid clauses are:
  13211.   for VAR from/upfrom/downfrom NUM to/upto/downto/above/below NUM by NUM,
  13212.   for VAR in LIST by FUNC, for VAR on LIST by FUNC, for VAR = INIT then EXPR,
  13213.   for VAR across ARRAY, repeat NUM, with VAR = INIT, while COND, until COND,
  13214.   always COND, never COND, thereis COND, collect EXPR into VAR,
  13215.   append EXPR into VAR, nconc EXPR into VAR, sum EXPR into VAR,
  13216.   count EXPR into VAR, maximize EXPR into VAR, minimize EXPR into VAR,
  13217.   if COND CLAUSE [and CLAUSE]... else CLAUSE [and CLAUSE...],
  13218.   unless COND CLAUSE [and CLAUSE]... else CLAUSE [and CLAUSE...],
  13219.   do EXPRS..., initially EXPRS..., finally EXPRS..., return EXPR,
  13220.   finally return EXPR, named NAME.
  13221. Fdo
  13222. The Common Lisp `do' loop.
  13223. Format is: (do ((VAR INIT [STEP])...) (END-TEST [RESULT...]) BODY...)
  13224. Fdo*
  13225. The Common Lisp `do*' loop.
  13226. Format is: (do* ((VAR INIT [STEP])...) (END-TEST [RESULT...]) BODY...)
  13227. Fdolist
  13228. (dolist (VAR LIST [RESULT]) BODY...): loop over a list.
  13229. Evaluate BODY with VAR bound to each `car' from LIST, in turn.
  13230. Then evaluate RESULT to get return value, default nil.
  13231. Fdotimes
  13232. (dotimes (VAR COUNT [RESULT]) BODY...): loop a certain number of times.
  13233. Evaluate BODY with VAR bound to successive integers from 0, inclusive,
  13234. to COUNT, exclusive.  Then evaluate RESULT to get return value, default
  13235. nil.
  13236. Fdo-symbols
  13237. (dosymbols (VAR [OBARRAY [RESULT]]) BODY...): loop over all symbols.
  13238. Evaluate BODY with VAR bound to each interned symbol, or to each symbol
  13239. from OBARRAY.
  13240. Fpsetq
  13241. (psetq SYM VAL SYM VAL ...): set SYMs to the values VALs in parallel.
  13242. This is like `setq', except that all VAL forms are evaluated (in order)
  13243. before assigning any symbols SYM to the corresponding values.
  13244. Fprogv
  13245. (progv SYMBOLS VALUES BODY...): bind SYMBOLS to VALUES dynamically in BODY.
  13246. The forms SYMBOLS and VALUES are evaluated, and must evaluate to lists.
  13247. Each SYMBOL in the first list is bound to the corresponding VALUE in the
  13248. second list (or made unbound if VALUES is shorter than SYMBOLS); then the
  13249. BODY forms are executed and their result is returned.  This is much like
  13250. a `let' form, except that the list of symbols can be computed at run-time.
  13251. Fflet
  13252. (flet ((FUNC ARGLIST BODY...) ...) FORM...): make temporary function defns.
  13253. This is an analogue of `let' that operates on the function cell of FUNC
  13254. rather than its value cell.  The FORMs are evaluated with the specified
  13255. function definitions in place, then the definitions are undone (the FUNCs
  13256. go back to their previous definitions, or lack thereof).
  13257. Flabels
  13258. (labels ((FUNC ARGLIST BODY...) ...) FORM...): make temporary func bindings.
  13259. This is like `flet', except the bindings are lexical instead of dynamic.
  13260. Unlike `flet', this macro is fully complaint with the Common Lisp standard.
  13261. Fmacrolet
  13262. (macrolet ((NAME ARGLIST BODY...) ...) FORM...): make temporary macro defns.
  13263. This is like `flet', but for macros instead of functions.
  13264. Fsymbol-macrolet
  13265. (symbol-macrolet ((NAME EXPANSION) ...) FORM...): make symbol macro defns.
  13266. Within the body FORMs, references to the variable NAME will be replaced
  13267. by EXPANSION, and (setq NAME ...) will act like (setf EXPANSION ...).
  13268. Flexical-let
  13269. (lexical-let BINDINGS BODY...): like `let', but lexically scoped.
  13270. The main visible difference is that lambdas inside BODY will create
  13271. lexical closures as in Common Lisp.
  13272. Flexical-let*
  13273. (lexical-let* BINDINGS BODY...): like `let*', but lexically scoped.
  13274. The main visible difference is that lambdas inside BODY will create
  13275. lexical closures as in Common Lisp.
  13276. Fmultiple-value-bind
  13277. (multiple-value-bind (SYM SYM...) FORM BODY): collect multiple return values.
  13278. FORM must return a list; the BODY is then executed with the first N elements
  13279. of this list bound (`let'-style) to each of the symbols SYM in turn.  This
  13280. is analogous to the Common Lisp `multiple-value-bind' macro, using lists to
  13281. simulate true multiple return values.  For compatibility, (values A B C) is
  13282. a synonym for (list A B C).
  13283. Fmultiple-value-setq
  13284. (multiple-value-setq (SYM SYM...) FORM): collect multiple return values.
  13285. FORM must return a list; the first N elements of this list are stored in
  13286. each of the symbols SYM in turn.  This is analogous to the Common Lisp
  13287. `multiple-value-setq' macro, using lists to simulate true multiple return
  13288. values.  For compatibility, (values A B C) is a synonym for (list A B C).
  13289. Fdefine-setf-method
  13290. (define-setf-method NAME ARGLIST BODY...): define a `setf' method.
  13291. This method shows how to handle `setf's to places of the form (NAME ARGS...).
  13292. The argument forms ARGS are bound according to ARGLIST, as if NAME were
  13293. going to be expanded as a macro, then the BODY forms are executed and must
  13294. return a list of five elements: a temporary-variables list, a value-forms
  13295. list, a store-variables list (of length one), a store-form, and an access-
  13296. form.  See `defsetf' for a simpler way to define most setf-methods.
  13297. Fdefsetf
  13298. (defsetf NAME FUNC): define a `setf' method.
  13299. This macro is an easy-to-use substitute for `define-setf-method' that works
  13300. well for simple place forms.  In the simple `defsetf' form, `setf's of
  13301. the form (setf (NAME ARGS...) VAL) are transformed to function or macro
  13302. calls of the form (FUNC ARGS... VAL).  Example: (defsetf aref aset).
  13303. Alternate form: (defsetf NAME ARGLIST (STORE) BODY...).
  13304. Here, the above `setf' call is expanded by binding the argument forms ARGS
  13305. according to ARGLIST, binding the value form VAL to STORE, then executing
  13306. BODY, which must return a Lisp form that does the necessary `setf' operation.
  13307. Actually, ARGLIST and STORE may be bound to temporary variables which are
  13308. introduced automatically to preserve proper execution order of the arguments.
  13309. Example: (defsetf nth (n x) (v) (list 'setcar (list 'nthcdr n x) v)).
  13310. Fget-setf-method
  13311. Return a list of five values describing the setf-method for PLACE.
  13312. PLACE may be any Lisp form which can appear as the PLACE argument to
  13313. a macro like `setf' or `incf'.
  13314. Fsetf
  13315. (setf PLACE VAL PLACE VAL ...): set each PLACE to the value of its VAL.
  13316. This is a generalized version of `setq'; the PLACEs may be symbolic
  13317. references such as (car x) or (aref x i), as well as plain symbols.
  13318. For example, (setf (cadar x) y) is equivalent to (setcar (cdar x) y).
  13319. The return value is the last VAL in the list.
  13320. Fpsetf
  13321. (psetf PLACE VAL PLACE VAL ...): set PLACEs to the values VALs in parallel.
  13322. This is like `setf', except that all VAL forms are evaluated (in order)
  13323. before assigning any PLACEs to the corresponding values.
  13324. Fremf
  13325. (remf PLACE TAG): remove TAG from property list PLACE.
  13326. PLACE may be a symbol, or any generalized variable allowed by `setf'.
  13327. The form returns true if TAG was found and removed, nil otherwise.
  13328. Fshiftf
  13329. (shiftf PLACE PLACE... VAL): shift left among PLACEs.
  13330. Example: (shiftf A B C) sets A to B, B to C, and returns the old A.
  13331. Each PLACE may be a symbol, or any generalized variable allowed by `setf'.
  13332. Frotatef
  13333. (rotatef PLACE...): rotate left among PLACEs.
  13334. Example: (rotatef A B C) sets A to B, B to C, and C to A.  It returns nil.
  13335. Each PLACE may be a symbol, or any generalized variable allowed by `setf'.
  13336. Fletf
  13337. (letf ((PLACE VALUE) ...) BODY...): temporarily bind to PLACEs.
  13338. This is the analogue of `let', but with generalized variables (in the
  13339. sense of `setf') for the PLACEs.  Each PLACE is set to the corresponding
  13340. VALUE, then the BODY forms are executed.  On exit, either normally or
  13341. because of a `throw' or error, the PLACEs are set back to their original
  13342. values.  Note that this macro is *not* available in Common Lisp.
  13343. As a special case, if `(PLACE)' is used instead of `(PLACE VALUE)',
  13344. the PLACE is not modified before executing BODY.
  13345. Fletf*
  13346. (letf* ((PLACE VALUE) ...) BODY...): temporarily bind to PLACEs.
  13347. This is the analogue of `let*', but with generalized variables (in the
  13348. sense of `setf') for the PLACEs.  Each PLACE is set to the corresponding
  13349. VALUE, then the BODY forms are executed.  On exit, either normally or
  13350. because of a `throw' or error, the PLACEs are set back to their original
  13351. values.  Note that this macro is *not* available in Common Lisp.
  13352. As a special case, if `(PLACE)' is used instead of `(PLACE VALUE)',
  13353. the PLACE is not modified before executing BODY.
  13354. Fcallf
  13355. (callf FUNC PLACE ARGS...): set PLACE to (FUNC PLACE ARGS...).
  13356. FUNC should be an unquoted function name.  PLACE may be a symbol,
  13357. or any generalized variable allowed by `setf'.
  13358. Fcallf2
  13359. (callf2 FUNC ARG1 PLACE ARGS...): set PLACE to (FUNC ARG1 PLACE ARGS...).
  13360. Like `callf', but PLACE is the second argument of FUNC, not the first.
  13361. Fdefine-modify-macro
  13362. (define-modify-macro NAME ARGLIST FUNC): define a `setf'-like modify macro.
  13363. If NAME is called, it combines its PLACE argument with the other arguments
  13364. from ARGLIST using FUNC: (define-modify-macro incf (&optional (n 1)) +)
  13365. Fdefstruct
  13366. (defstruct (NAME OPTIONS...) (SLOT SLOT-OPTS...)...): define a struct type.
  13367. This macro defines a new Lisp data type called NAME, which contains data
  13368. stored in SLOTs.  This defines a `make-NAME' constructor, a `copy-NAME'
  13369. copier, a `NAME-p' predicate, and setf-able `NAME-SLOT' accessors.
  13370. Fdeftype
  13371. (deftype NAME ARGLIST BODY...): define NAME as a new data type.
  13372. The type name can then be used in `typecase', `check-type', etc.
  13373. Ftypep
  13374. Check that OBJECT is of type TYPE.
  13375. TYPE is a Common Lisp-style type specifier.
  13376. Fcheck-type
  13377. Verify that FORM is of type TYPE; signal an error if not.
  13378. STRING is an optional description of the desired type.
  13379. Fassert
  13380. Verify that FORM returns non-nil; signal an error if not.
  13381. Second arg SHOW-ARGS means to include arguments of FORM in message.
  13382. Other args STRING and ARGS... are arguments to be passed to `error'.
  13383. They are not evaluated unless the assertion fails.  If STRING is
  13384. omitted, a default message listing FORM itself is used.
  13385. Fignore-errors
  13386. Execute FORMS; if an error occurs, return nil.
  13387. Otherwise, return result of last FORM.
  13388. Fdefine-compiler-macro
  13389. (define-compiler-macro FUNC ARGLIST BODY...): Define a compiler-only macro.
  13390. This is like `defmacro', but macro expansion occurs only if the call to
  13391. FUNC is compiled (i.e., not interpreted).  Compiler macros should be used
  13392. for optimizing the way calls to FUNC are compiled; the form returned by
  13393. BODY should do the same thing as a call to the normal function called
  13394. FUNC, though possibly more efficiently.  Note that, like regular macros,
  13395. compiler macros are expanded repeatedly until no further expansions are
  13396. possible.  Unlike regular macros, BODY can decide to "punt" and leave the
  13397. original function call alone by declaring an initial `&whole foo' parameter
  13398. and then returning foo.
  13399. Fdefine-widget-keywords
  13400. This doesn't do anything in Emacs 20 or XEmacs.
  13401. Fdefine-widget
  13402. Define a new widget type named NAME from CLASS.
  13403.  
  13404. NAME and CLASS should both be symbols, CLASS should be one of the
  13405. existing widget types, or nil to create the widget from scratch.
  13406.  
  13407. After the new widget has been defined, the following two calls will
  13408. create identical widgets:
  13409.  
  13410. * (widget-create NAME)
  13411.  
  13412. * (apply 'widget-create CLASS ARGS)
  13413.  
  13414. The third argument DOC is a documentation string for the widget.
  13415. Vcustom-define-hook
  13416. Hook called after defining each customize option.
  13417. Fcustom-initialize-default
  13418. Initialize SYMBOL with VALUE.
  13419. This will do nothing if symbol already has a default binding.
  13420. Otherwise, if symbol has a `saved-value' property, it will evaluate
  13421. the car of that and used as the default binding for symbol.
  13422. Otherwise, VALUE will be evaluated and used as the default binding for
  13423. symbol.
  13424. Fcustom-initialize-set
  13425. Initialize SYMBOL with VALUE.
  13426. Like `custom-initialize-default', but use the function specified by
  13427. `:set' to initialize SYMBOL.
  13428. Fcustom-initialize-reset
  13429. Initialize SYMBOL with VALUE.
  13430. Like `custom-initialize-set', but use the function specified by
  13431. `:get' to reinitialize SYMBOL if it is already bound.
  13432. Fcustom-initialize-changed
  13433. Initialize SYMBOL with VALUE.
  13434. Like `custom-initialize-reset', but only use the `:set' function if the 
  13435. not using the standard setting.  Otherwise, use the `set-default'.
  13436. Fcustom-declare-variable
  13437. Like `defcustom', but SYMBOL and VALUE are evaluated as normal arguments.
  13438. Fdefcustom
  13439. Declare SYMBOL as a customizable variable that defaults to VALUE.
  13440. DOC is the variable documentation.
  13441.  
  13442. Neither SYMBOL nor VALUE needs to be quoted.
  13443. If SYMBOL is not already bound, initialize it to VALUE.
  13444. The remaining arguments should have the form
  13445.  
  13446.    [KEYWORD VALUE]... 
  13447.  
  13448. The following KEYWORD's are defined:
  13449.  
  13450. :type    VALUE should be a widget type for editing the symbols value.
  13451.     The default is `sexp'.
  13452. :options VALUE should be a list of valid members of the widget type.
  13453. :group  VALUE should be a customization group.  
  13454.         Add SYMBOL to that group.
  13455. :initialize VALUE should be a function used to initialize the
  13456.     variable.  It takes two arguments, the symbol and value
  13457.     given in the `defcustom' call.  The default is
  13458.     `custom-initialize-set' 
  13459. :set    VALUE should be a function to set the value of the symbol. 
  13460.     It takes two arguments, the symbol to set and the value to
  13461.     give it.  The default is `set-default'.
  13462. :get    VALUE should be a function to extract the value of symbol.
  13463.     The function takes one argument, a symbol, and should return
  13464.     the current value for that symbol.  The default is
  13465.     `default-value'. 
  13466. :require VALUE should be a feature symbol.  Each feature will be
  13467.     required after initialization, of the the user have saved this
  13468.     option.
  13469.  
  13470. Read the section about customization in the Emacs Lisp manual for more
  13471. information.
  13472. Fdefface
  13473. Declare FACE as a customizable face that defaults to SPEC.
  13474. FACE does not need to be quoted.
  13475.  
  13476. Third argument DOC is the face documentation.
  13477.  
  13478. If FACE has been set with `custom-set-face', set the face attributes
  13479. as specified by that function, otherwise set the face attributes
  13480. according to SPEC.
  13481.  
  13482. The remaining arguments should have the form
  13483.  
  13484.    [KEYWORD VALUE]...
  13485.  
  13486. The following KEYWORDs are defined:
  13487.  
  13488. :group  VALUE should be a customization group.
  13489.         Add FACE to that group.
  13490.  
  13491. SPEC should be an alist of the form ((DISPLAY ATTS)...).
  13492.  
  13493. ATTS is a list of face attributes and their values.  The possible
  13494. attributes are defined in the variable `custom-face-attributes'.
  13495.  
  13496. The ATTS of the first entry in SPEC where the DISPLAY matches the
  13497. frame should take effect in that frame.  DISPLAY can either be the
  13498. symbol t, which will match all frames, or an alist of the form
  13499. ((REQ ITEM...)...)
  13500.  
  13501. For the DISPLAY to match a FRAME, the REQ property of the frame must
  13502. match one of the ITEM.  The following REQ are defined:
  13503.  
  13504. `type' (the value of `window-system')
  13505.   Should be one of `x' or `tty'.
  13506.  
  13507. `class' (the frame's color support)
  13508.   Should be one of `color', `grayscale', or `mono'.
  13509.  
  13510. `background' (what color is used for the background text)
  13511.   Should be one of `light' or `dark'.
  13512.  
  13513. Read the section about customization in the Emacs Lisp manual for more
  13514. information.
  13515. Fcustom-declare-group
  13516. Like `defgroup', but SYMBOL is evaluated as a normal argument.
  13517. Fdefgroup
  13518. Declare SYMBOL as a customization group containing MEMBERS.
  13519. SYMBOL does not need to be quoted.
  13520.  
  13521. Third arg DOC is the group documentation.
  13522.  
  13523. MEMBERS should be an alist of the form ((NAME WIDGET)...) where NAME
  13524. is a symbol and WIDGET is a widget for editing that symbol.  Useful
  13525. widgets are `custom-variable' for editing variables, `custom-face' for
  13526. edit faces, and `custom-group' for editing groups.
  13527.  
  13528. The remaining arguments should have the form
  13529.  
  13530.    [KEYWORD VALUE]... 
  13531.  
  13532. The following KEYWORD's are defined:
  13533.  
  13534. :group  VALUE should be a customization group.
  13535.         Add SYMBOL to that group.
  13536.  
  13537. Read the section about customization in the Emacs Lisp manual for more
  13538. information.
  13539. Vcustom-group-hash-table
  13540. Hash-table of non-empty groups.
  13541. Fcustom-add-to-group
  13542. To existing GROUP add a new OPTION of type WIDGET.
  13543. If there already is an entry for that option, overwrite it.
  13544. Fcustom-handle-all-keywords
  13545. For customization option SYMBOL, handle keyword arguments ARGS.
  13546. Third argument TYPE is the custom option type.
  13547. Fcustom-handle-keyword
  13548. For customization option SYMBOL, handle KEYWORD with VALUE.
  13549. Fourth argument TYPE is the custom option type.
  13550. Fcustom-add-option
  13551. To the variable SYMBOL add OPTION.
  13552.  
  13553. If SYMBOL is a hook variable, OPTION should be a hook member.
  13554. For other types variables, the effect is undefined.
  13555. Fcustom-add-link
  13556. To the custom option SYMBOL add the link WIDGET.
  13557. Fcustom-add-load
  13558. To the custom option SYMBOL add the dependency LOAD.
  13559. LOAD should be either a library file name, or a feature name.
  13560. Fcustom-set-variables
  13561. Initialize variables according to user preferences.  
  13562.  
  13563. The arguments should be a list where each entry has the form:
  13564.  
  13565.   (SYMBOL VALUE [NOW])
  13566.  
  13567. The unevaluated VALUE is stored as the saved value for SYMBOL.
  13568. If NOW is present and non-nil, VALUE is also evaluated and bound as
  13569. the default value for the SYMBOL.
  13570. Frecursion-depth
  13571. Return the current depth in recursive edits.
  13572. Ftop-level
  13573. Exit all recursive editing levels.
  13574. Fexit-recursive-edit
  13575. Exit from the innermost recursive edit or minibuffer.
  13576. Fabort-recursive-edit
  13577. Abort the command that requested this recursive edit or minibuffer input.
  13578. Fkeyboard-quit
  13579. Signal a `quit' condition.
  13580. If this character is typed while lisp code is executing, it will be treated
  13581.  as an interrupt.
  13582. If this character is typed at top-level, this simply beeps.
  13583. If `zmacs-regions' is true, and the zmacs region is active in this buffer,
  13584. then this key deactivates the region without beeping or signalling.
  13585. Vbuffer-quit-function
  13586. Function to call to "quit" the current buffer, or nil if none.
  13587. \[keyboard-escape-quit] calls this function when its more local actions
  13588. (such as cancelling a prefix argument, minibuffer or region) do not apply.
  13589. Fkeyboard-escape-quit
  13590. Exit the current "mode" (in a generalized sense of the word).
  13591. This command can exit an interactive command such as `query-replace',
  13592. can clear out a prefix argument or a region,
  13593. can get out of the minibuffer or other recursive edit,
  13594. cancel the use of the current buffer (for special-purpose buffers),
  13595. or go back to just one window (by deleting all but the selected window).
  13596. Vlast-error
  13597. #### Document me.
  13598. Fdescribe-last-error
  13599. Redisplay the last error-message.  See the variable `last-error'.
  13600. Fexecute-extended-command
  13601. Read a command name from the minibuffer using 'completing-read'.
  13602. Then call the specified command using 'command-execute' and return its
  13603. return value.  If the command asks for a prefix argument, supply the
  13604. value of the current raw prefix argument, or the value of PREFIX-ARG
  13605. when called from Lisp.
  13606. Fy-or-n-p-minibuf
  13607. Ask user a "y or n" question.  Return t if answer is "y".
  13608. Takes one argument, which is the string to display to ask the question.
  13609. It should end in a space; `y-or-n-p' adds `(y or n) ' to it.
  13610. No confirmation of the answer is requested; a single character is enough.
  13611. Also accepts Space to mean yes, or Delete to mean no.
  13612. Fyes-or-no-p-minibuf
  13613. Ask user a yes-or-no question.  Return t if answer is yes.
  13614. Takes one argument, which is the string to display to ask the question.
  13615. It should end in a space; `yes-or-no-p' adds `(yes or no) ' to it.
  13616. The user must confirm the answer with RET,
  13617. and can edit it until it has been confirmed.
  13618. Fread-char
  13619. Read a character from the command input (keyboard or macro).
  13620. If a mouse click or non-ASCII character is detected, an error is
  13621. signalled.  The character typed is returned as an ASCII value.  This
  13622. is most likely the wrong thing for you to be using: consider using
  13623. the `next-command-event' function instead.
  13624. Fread-char-exclusive
  13625. Read a character from the command input (keyboard or macro).
  13626. If a mouse click or non-ASCII character is detected, it is discarded.
  13627. The character typed is returned as an ASCII value.  This is most likely
  13628. the wrong thing for you to be using: consider using the
  13629. `next-command-event' function instead.
  13630. Fread-quoted-char
  13631. Like `read-char', except that if the first character read is an octal
  13632. digit, we read up to two more octal digits and return the character
  13633. represented by the octal number consisting of those digits.
  13634. Optional argument PROMPT specifies a string to use to prompt the user.
  13635. Fmomentary-string-display
  13636. Momentarily display STRING in the buffer at POS.
  13637. Display remains until next character is typed.
  13638. If the char is EXIT-CHAR (optional third arg, default is SPC) it is swallowed;
  13639. otherwise it is then available as input (as a command if nothing else).
  13640. Display MESSAGE (optional fourth arg) in the echo area.
  13641. If MESSAGE is nil, instructions to type EXIT-CHAR are displayed there.
  13642. Fsuppress-keymap
  13643. Make MAP override all normally self-inserting keys to be undefined.
  13644. Normally, as an exception, digits and minus-sign are set to make prefix args,
  13645. but optional second arg NODIGITS non-nil treats them like other chars.
  13646. Fsubstitute-key-definition
  13647. Replace OLDDEF with NEWDEF for any keys in KEYMAP now defined as OLDDEF.
  13648. In other words, OLDDEF is replaced with NEWDEF wherever it appears.
  13649. Prefix keymaps are checked recursively.  If optional fourth argument OLDMAP
  13650. is specified, we redefine in KEYMAP as NEWDEF those chars which are defined
  13651. as OLDDEF in OLDMAP, unless that keybinding is already present in keymap.
  13652. If optional fifth argument PREFIX is defined, then only those occurrences of
  13653. OLDDEF found in keymaps accessible through the keymap bound to PREFIX in
  13654. KEYMAP are redefined.  See also `accessible-keymaps'.
  13655. Finsert-key-binding
  13656. Insert the command bound to KEY.
  13657. Fread-command-or-command-sexp
  13658. Read a command symbol or command sexp.
  13659. A command sexp is wrapped in an interactive lambda if needed.
  13660. Prompts with PROMPT.
  13661. Flocal-key-binding
  13662. Return the binding for command KEYS in current local keymap only.
  13663. KEYS is a string, a vector of events, or a vector of key-description lists
  13664. as described in the documentation for the `define-key' function.
  13665. The binding is probably a symbol with a function definition; see
  13666. the documentation for `lookup-key' for more information.
  13667. Fglobal-key-binding
  13668. Return the binding for command KEYS in current global keymap only.
  13669. KEYS is a string or vector of events, a sequence of keystrokes.
  13670. The binding is probably a symbol with a function definition; see
  13671. the documentation for `lookup-key' for more information.
  13672. Fglobal-set-key
  13673. Give KEY a global binding as COMMAND.
  13674. COMMAND is a symbol naming an interactively-callable function.
  13675. KEY is a string, a vector of events, or a vector of key-description lists
  13676. as described in the documentation for the `define-key' function.
  13677. Note that if KEY has a local binding in the current buffer
  13678. that local binding will continue to shadow any global binding.
  13679. Flocal-set-key
  13680. Give KEY a local binding as COMMAND.
  13681. COMMAND is a symbol naming an interactively-callable function.
  13682. KEY is a string, a vector of events, or a vector of key-description lists
  13683. as described in the documentation for the `define-key' function.
  13684. The binding goes in the current buffer's local map,
  13685. which is shared with other buffers in the same major mode.
  13686. Fglobal-unset-key
  13687. Remove global binding of KEY.
  13688. KEY is a string, a vector of events, or a vector of key-description lists
  13689. as described in the documentation for the `define-key' function.
  13690. Flocal-unset-key
  13691. Remove local binding of KEY.
  13692. KEY is a string, a vector of events, or a vector of key-description lists
  13693. as described in the documentation for the `define-key' function.
  13694. Fminor-mode-key-binding
  13695. Find the visible minor mode bindings of KEY.
  13696. Return an alist of pairs (MODENAME . BINDING), where MODENAME is
  13697. the symbol which names the minor mode binding KEY, and BINDING is
  13698. KEY's definition in that mode.  In particular, if KEY has no
  13699. minor-mode bindings, return nil.  If the first binding is a
  13700. non-prefix, all subsequent bindings will be omitted, since they would
  13701. be ignored.  Similarly, the list doesn't include non-prefix bindings
  13702. that come after prefix bindings.
  13703.  
  13704. If optional argument ACCEPT-DEFAULT is non-nil, recognize default
  13705. bindings; see the description of `lookup-key' for more details about this.
  13706. Fcurrent-minor-mode-maps
  13707. Return a list of keymaps for the minor modes of the current buffer.
  13708. Fdefine-prefix-command
  13709. Define COMMAND as a prefix command.
  13710. A new sparse keymap is stored as COMMAND's function definition.
  13711. If second optional argument MAPVAR is not specified,
  13712.  COMMAND's value (as well as its function definition) is set to the keymap.
  13713. If a second optional argument MAPVAR is given and is not `t',
  13714.   the map is stored as its value.
  13715. Regardless of MAPVAR, COMMAND's function-value is always set to the keymap.
  13716. Fevents-to-keys
  13717. Given a vector of event objects, returns a vector of key descriptors,
  13718. or a string (if they all fit in the ASCII range).
  13719. Optional arg NO-MICE means that button events are not allowed.
  13720. Fnext-key-event
  13721. Return the next available keyboard event.
  13722. Fkey-sequence-list-description
  13723. Convert a key sequence KEYS to the full [(modifiers... key)...] form.
  13724. Argument KEYS can be in any form accepted by `define-key' function.
  13725. Fevent-apply-modifier
  13726. Return the next key event, with a modifier flag applied.
  13727. SYMBOL is the name of this modifier, as a symbol.
  13728. `function-key-map' is scanned for prefix bindings.
  13729. Fmake-syntax-table
  13730. Return a new syntax table.
  13731. It inherits all characters from the standard syntax table.
  13732. Fchar-syntax-from-code
  13733. Extract the syntax designator from the internal syntax code CODE.
  13734. CODE is the value actually contained in the syntax table.
  13735. Fset-char-syntax-in-code
  13736. Return a new internal syntax code whose syntax designator is DESIG.
  13737. Other characteristics are the same as in CODE.
  13738. Fsyntax-code-to-string
  13739. Return a string equivalent to internal syntax code CODE.
  13740. The string can be passed to `modify-syntax-entry'.
  13741. If CODE is invalid, return nil.
  13742. Fsyntax-string-to-code
  13743. Return the internal syntax code equivalent to STRING.
  13744. STRING should be something acceptable as the second argument to
  13745. `modify-syntax-entry'.
  13746. If STRING is invalid, signal an error.
  13747. Fmodify-syntax-entry
  13748. Set syntax for the characters CHAR-RANGE according to string SPEC.
  13749. CHAR-RANGE is a single character or a range of characters,
  13750.  as per `put-char-table'.
  13751. The syntax is changed only for table TABLE, which defaults to
  13752.  the current buffer's syntax table.
  13753. The first character of SPEC should be one of the following:
  13754.   Space    whitespace syntax.    w   word constituent.
  13755.   _        symbol constituent.   .   punctuation.
  13756.   (        open-parenthesis.     )   close-parenthesis.
  13757.   "        string quote.         \   character-quote.
  13758.   $        paired delimiter.     '   expression quote or prefix operator.
  13759.   <       comment starter.     >   comment ender.
  13760.   /        character-quote.      @   inherit from `standard-syntax-table'.
  13761.  
  13762. Only single-character comment start and end sequences are represented thus.
  13763. Two-character sequences are represented as described below.
  13764. The second character of SPEC is the matching parenthesis,
  13765.  used only if the first character is `(' or `)'.
  13766. Any additional characters are flags.
  13767. Defined flags are the characters 1, 2, 3, 4, 5, 6, 7, 8, p, a, and b.
  13768.  1 means C is the first of a two-char comment start sequence of style a.
  13769.  2 means C is the second character of such a sequence.
  13770.  3 means C is the first of a two-char comment end sequence of style a.
  13771.  4 means C is the second character of such a sequence.
  13772.  5 means C is the first of a two-char comment start sequence of style b.
  13773.  6 means C is the second character of such a sequence.
  13774.  7 means C is the first of a two-char comment end sequence of style b.
  13775.  8 means C is the second character of such a sequence.
  13776.  p means C is a prefix character for `backward-prefix-chars';
  13777.    such characters are treated as whitespace when they occur
  13778.    between expressions.
  13779.  a means C is comment starter or comment ender for comment style a (default)
  13780.  b means C is comment starter or comment ender for comment style b.
  13781. Fmap-syntax-table
  13782. Map FUNCTION over entries in syntax table TABLE, collapsing inheritance.
  13783. This is similar to `map-char-table', but works only on syntax tables, and
  13784.  collapses any entries that call for inheritance by invisibly substituting
  13785.  the inherited values from the standard syntax table.
  13786. Fsymbol-near-point
  13787. Return the first textual item to the nearest point.
  13788. Fdevice-list
  13789. Return a list of all devices.
  13790. Fdevice-type
  13791. Return the type of the specified device (e.g. `x' or `tty').
  13792. This is equivalent to the type of the device's console.
  13793. Value is `tty' for a tty device (a character-only terminal),
  13794. `x' for a device that is a screen on an X display,
  13795. `ns' for a device that is a NeXTstep connection (not yet implemented),
  13796. `win32' for a device that is a Windows or Windows NT connection (not yet
  13797.   implemented),
  13798. `pc' for a device that is a direct-write MS-DOS screen (not yet implemented),
  13799. `stream' for a stream device (which acts like a stdio stream), and
  13800. `dead' for a deleted device.
  13801. Fmake-tty-device
  13802. Create a new device on TTY.
  13803.   TTY should be the name of a tty device file (e.g. "/dev/ttyp3" under
  13804. SunOS et al.), as returned by the `tty' command.  A value of nil means
  13805. use the stdin and stdout as passed to XEmacs from the shell.
  13806.   If TERMINAL-TYPE is non-nil, it should be a string specifying the
  13807. type of the terminal attached to the specified tty.  If it is nil,
  13808. the terminal type will be inferred from the TERM environment variable.
  13809.   If CONTROLLING-PROCESS is non-nil, it should be an integer
  13810. specifying the process id of the process in control of the specified tty.  If
  13811. it is nil, it is assumes to be the value returned by emacs-pid.
  13812. Fmake-x-device
  13813. Create a new device connected to DISPLAY.
  13814. Fdevice-on-window-system-p
  13815. Return non-nil if DEVICE is on a window system.
  13816. This generally means that there is support for the mouse, the menubar,
  13817. the toolbar, glyphs, etc.
  13818. Fquit-char
  13819. Return the character that causes a QUIT to happen.
  13820. This is normally C-g.  Optional arg CONSOLE specifies the console
  13821. that the information is returned for; nil means the current console.
  13822. Fresume-pid-console
  13823. Resume the consoles with a controlling process of PID.
  13824. Fdefine-obsolete-function-alias
  13825. Define OLDFUN as an obsolete alias for function NEWFUN.
  13826. This makes calling OLDFUN equivalent to calling NEWFUN and marks OLDFUN
  13827. as obsolete.
  13828. Fdefine-compatible-function-alias
  13829. Define OLDFUN as a compatible alias for function NEWFUN.
  13830. This makes calling OLDFUN equivalent to calling NEWFUN and marks OLDFUN
  13831. as provided for compatibility only.
  13832. Fdefine-obsolete-variable-alias
  13833. Define OLDVAR as an obsolete alias for variable NEWVAR.
  13834. This makes referencing or setting OLDVAR equivalent to referencing or
  13835. setting NEWVAR and marks OLDVAR as obsolete. 
  13836. If OLDVAR was bound and NEWVAR was not, Set NEWVAR to OLDVAR.
  13837.  
  13838. Note: Use this before any other references (defvar/defcustom) to NEWVAR
  13839. Fdefine-compatible-variable-alias
  13840. Define OLDVAR as a compatible alias for variable NEWVAR.
  13841. This makes referencing or setting OLDVAR equivalent to referencing or
  13842. setting NEWVAR and marks OLDVAR as provided for compatibility only.
  13843. Fx-display-color-p
  13844. Returns non-nil if DEVICE is a color device.
  13845. Fx-display-grayscale-p
  13846. Returns non-nil if DEVICE is a grayscale device.
  13847. Fextent-data
  13848. Obsolete.  Returns the `data' property of the given extent.
  13849. Fset-extent-data
  13850. Obsolete.  Sets the `data' property of the given extent.
  13851. Fset-extent-attribute
  13852.  
  13853. Fextent-glyph
  13854.  
  13855. Fextent-layout
  13856.  
  13857. Fset-extent-layout
  13858.  
  13859. Fx-create-screen
  13860.  
  13861. Fframe-first-window
  13862. Returns the topmost, leftmost window of FRAME.
  13863. If omitted, FRAME defaults to the currently selected frame.
  13864. Fframe-parameters
  13865. Return the parameters-alist of frame FRAME.
  13866. It is a list of elements of the form (PARM . VALUE), where PARM is a symbol.
  13867. The meaningful PARMs depend on the kind of frame.
  13868. If FRAME is omitted, return information on the currently selected frame.
  13869.  
  13870. See the variables `default-frame-plist', `default-x-frame-plist', and
  13871. `default-tty-frame-plist' for a description of the parameters meaningful
  13872. for particular types of frames.
  13873. Fmodify-frame-parameters
  13874. Modify the properties of frame FRAME according to ALIST.
  13875. ALIST is an alist of properties to change and their new values.
  13876. Each element of ALIST has the form (PARM . VALUE), where PARM is a symbol.
  13877. The meaningful PARMs depend on the kind of frame.
  13878.  
  13879. See `set-frame-properties' for built-in property names.
  13880. Fkeymap-parent
  13881. Returns the first parent of the given keymap.
  13882. Fset-keymap-parent
  13883. Makes the given keymap have (only) the given parent.
  13884. Fadd-menu-item
  13885. Obsolete.  See the function `add-menu-button'.
  13886. Fadd-menu
  13887. See the function `add-submenu'.
  13888. Fx-set-frame-icon-pixmap
  13889. Set the icon of the given frame to the given image instance,
  13890. which should be an image instance object (as returned by
  13891. `make-image-instance'), a glyph object (as returned by `make-glyph'),
  13892. or nil.  If a glyph object is given, the glyph will be instantiated on
  13893. the frame to produce an image instance object.
  13894.  
  13895. If the given image instance has a mask, that will be used as the icon mask;
  13896. however, not all window managers support this.
  13897.  
  13898. The window manager is also not required to support color pixmaps,
  13899. only bitmaps (one plane deep).
  13900.  
  13901. Optional third argument is ignored.  If you're concerned about this
  13902. incomplete backwards incompatibility, you should convert your code
  13903. to use `frame-icon-glyph' -- you can specify a mask for an XBM file
  13904. using the standard image instantiator format.
  13905. Fmake-pixmap
  13906. Create a glyph with NAME as an image specifier and locale LOCALE.
  13907. The file should be in `XBM' or `XPM' format.
  13908. If the XBMLANGPATH environment variable is set, it will be searched for
  13909.  matching files.  Next, the directories listed in the `x-bitmap-file-path'
  13910.  variable will be searched (this variable is initialized from the
  13911.  "*bitmapFilePath" resource).  Finally, the XEmacs etc/ directory
  13912.  (the value of `data-directory') will be searched.
  13913. The file argument may also be a list of the form (width height data) where
  13914.  width and height are the size in pixels, and data is a string, containing
  13915.  the raw bits of the bitmap.  (Bitmaps specified this way can only be one bit
  13916.  deep.)
  13917. If compiled with support for XPM, the file argument may also be a string
  13918.  which is the contents of an XPM file (that is, a string beginning with the
  13919.  characters "/* XPM */"; see the XPM documentation).
  13920. The optional second argument is the specifier locale for this pixmap glyph.
  13921. The returned object is a glyph object.  To get the actual pixmap object for
  13922. a given frame, use the function `glyph-instance'.
  13923. Fmake-cursor
  13924. Creates a pointer image instance with NAME as an image specifier.
  13925. The optional second and third arguments are the foreground and background
  13926.  colors.  They may be color name strings or `pixel' objects.
  13927. The optional fourth argument is the device on which to allocate the cursor
  13928.  (defaults to the selected device).
  13929. This allocates a new pointer in the X server, and signals an error if the
  13930.  pointer is unknown or cannot be allocated.
  13931.  
  13932. A pointer name can take many different forms.  It can be:
  13933.  - any of the standard cursor names from appendix B of the Xlib manual
  13934.    (also known as the file <X11/cursorfont.h>) minus the XC_ prefix;
  13935.  - the name of a font, and glyph index into it of the form
  13936.    "FONT fontname index [[mask-font] mask-index]";
  13937.  - the name of a bitmap or pixmap file;
  13938.  - or an image instance object, as returned by `make-image-instance'.
  13939.  
  13940. If it is an image instance or pixmap file, and that pixmap comes with a
  13941.  mask, then that mask will be used.  If it is an image instance, it must
  13942.  have only one plane, since X pointers may only have two colors.  If it is a
  13943.  pixmap file, then the file will be read in monochrome.
  13944.  
  13945. If it is a bitmap file, and if a bitmap file whose name is the name of the
  13946.  pointer with "msk" or "Mask" appended exists, then that second bitmap
  13947.  will be used as the mask.  For example, a pair of files might be named
  13948.  "pointer.xbm" and "pointer.xbmmsk".
  13949.  
  13950. The returned object is a normal, first-class lisp object.  The way you
  13951. `deallocate' the pointer is the way you deallocate any other lisp object:
  13952. you drop all pointers to it and allow it to be garbage collected.  When
  13953. these objects are GCed, the underlying X data is deallocated as well.
  13954. Fx-color-values
  13955. Return a description of the color named COLOR on frame FRAME.
  13956. The value is a list of integer RGB values--(RED GREEN BLUE).
  13957. These values appear to range from 0 to 65280 or 65535, depending
  13958. on the system; white is (65280 65280 65280) or (65535 65535 65535).
  13959. If FRAME is omitted or nil, use the selected frame.
  13960. Fstring-to-sequence
  13961. Convert STRING to a sequence of TYPE which contains characters in STRING.
  13962. TYPE should be `list' or `vector'.
  13963. Multibyte characters are concerned.
  13964. Fstring-to-list
  13965. Return a list of characters in STRING.
  13966. Fstring-to-vector
  13967. Return a vector of characters in STRING.
  13968. Fstore-substring
  13969. Embed OBJ (string or character) at index IDX of STRING.
  13970. Ftruncate-string-to-width
  13971. Truncate string STR to end at column END-COLUMN.
  13972. The optional 2nd arg START-COLUMN, if non-nil, specifies
  13973. the starting column; that means to return the characters occupying
  13974. columns START-COLUMN ... END-COLUMN of STR.
  13975.  
  13976. The optional 3rd arg PADDING, if non-nil, specifies a padding character
  13977. to add at the end of the result if STR doesn't reach column END-COLUMN,
  13978. or if END-COLUMN comes in the middle of a character in STR.
  13979. PADDING is also added at the beginning of the result
  13980. if column START-COLUMN appears in the middle of a character in STR.
  13981.  
  13982. If PADDING is nil, no padding is added in these cases, so
  13983. the resulting string may be narrower than END-COLUMN.
  13984. Fmake-specifier-and-init
  13985. Create and initialize a new specifier.
  13986.  
  13987. This is a front-end onto `make-specifier' that allows you to create a
  13988. specifier and add specs to it at the same time.  TYPE specifies the
  13989. specifier type.  SPEC-LIST supplies the specification(s) to be added
  13990. to the specifier. Normally, almost any reasonable abbreviation of the
  13991. full spec-list form is accepted, and is converted to the full form;
  13992. however, if optional argument DONT-CANONICALIZE is non-nil, this
  13993. conversion is not performed, and the SPEC-LIST must already be in full
  13994. form.  See `canonicalize-spec-list'.
  13995. Fmap-specifier
  13996. Apply MS-FUNC to the specification(s) for MS-LOCALE in MS-SPECIFIER.
  13997.  
  13998. If MS-LOCALE is a locale, MS-FUNC will be called for that locale.
  13999. If MS-LOCALE is a locale type, MS-FUNC will be mapped over all locales
  14000. of that type.  If MS-LOCALE is 'all or nil, MS-FUNC will be mapped
  14001. over all locales in MS-SPECIFIER.
  14002.  
  14003. MS-FUNC is called with four arguments: the MS-SPECIFIER, the locale
  14004. being mapped over, the inst-list for that locale, and the
  14005. optional MS-MAPARG.  If any invocation of MS-FUNC returns non-nil,
  14006. the mapping will stop and the returned value becomes the
  14007. value returned from `map-specifier'.  Otherwise, `map-specifier'
  14008. returns nil.
  14009. Fcanonicalize-inst-pair
  14010. Canonicalize the given INST-PAIR.
  14011.  
  14012. SPECIFIER-TYPE specifies the type of specifier that this SPEC-LIST
  14013. will be used for.
  14014.  
  14015. Canonicalizing means converting to the full form for an inst-pair, i.e.
  14016. `(TAG-SET . INSTANTIATOR)'.  A single, untagged instantiator is given
  14017. a tag set of nil (the empty set), and a single tag is converted into
  14018. a tag set consisting only of that tag.
  14019.  
  14020. If NOERROR is non-nil, signal an error if the inst-pair is invalid;
  14021. otherwise return t.
  14022. Fcanonicalize-inst-list
  14023. Canonicalize the given INST-LIST (a list of inst-pairs).
  14024.  
  14025. SPECIFIER-TYPE specifies the type of specifier that this INST-LIST
  14026. will be used for.
  14027.  
  14028. Canonicalizing means converting to the full form for an inst-list, i.e.
  14029. `((TAG-SET . INSTANTIATOR) ...)'.  This function accepts a single
  14030. inst-pair or any abbreviation thereof or a list of (possibly
  14031. abbreviated) inst-pairs. (See `canonicalize-inst-pair'.)
  14032.  
  14033. If NOERROR is non-nil, signal an error if the inst-list is invalid;
  14034. otherwise return t.
  14035. Fcanonicalize-spec
  14036. Canonicalize the given SPEC (a specification).
  14037.  
  14038. SPECIFIER-TYPE specifies the type of specifier that this SPEC-LIST
  14039. will be used for.
  14040.  
  14041. Canonicalizing means converting to the full form for a spec, i.e.
  14042. `(LOCALE (TAG-SET . INSTANTIATOR) ...)'.  This function accepts a
  14043. possibly abbreviated inst-list or a cons of a locale and a possibly
  14044. abbreviated inst-list. (See `canonicalize-inst-list'.)
  14045.  
  14046. If NOERROR is nil, signal an error if the specification is invalid;
  14047. otherwise return t.
  14048. Fcanonicalize-spec-list
  14049. Canonicalize the given SPEC-LIST (a list of specifications).
  14050.  
  14051. SPECIFIER-TYPE specifies the type of specifier that this SPEC-LIST
  14052. will be used for.
  14053.  
  14054. Canonicalizing means converting to the full form for a spec-list, i.e.
  14055. `((LOCALE (TAG-SET . INSTANTIATOR) ...) ...)'.  This function accepts
  14056. a possibly abbreviated specification or a list of such things. (See
  14057. `canonicalize-spec'.) This is the function used to convert spec-lists
  14058. accepted by `set-specifier' and such into a form suitable for
  14059. `add-spec-list-to-specifier'.
  14060.  
  14061. This function tries extremely hard to resolve any ambiguities,
  14062. and the built-in specifier types (font, image, toolbar, etc.) are
  14063. designed so that there won't be any ambiguities.
  14064.  
  14065. If NOERROR is nil, signal an error if the spec-list is invalid;
  14066. otherwise return t.
  14067. Fset-specifier
  14068. Add a specification or specifications to SPECIFIER.
  14069.  
  14070. This function adds a specification of VALUE in locale LOCALE.
  14071. LOCALE indicates where this specification is active, and should be
  14072. a buffer, a window, a frame, a device, or the symbol `global' to
  14073. indicate that it applies everywhere.  LOCALE usually defaults to
  14074. `global' if omitted.
  14075.  
  14076. VALUE is usually what is called an "instantiator" (which, roughly
  14077. speaking, corresponds to the "value" of the property governed by
  14078. SPECIFIER).  The valid instantiators for SPECIFIER depend on the
  14079. type of SPECIFIER (which you can determine using `specifier-type').
  14080. The specifier `scrollbar-width', for example, is of type `integer',
  14081. meaning its valid instantiators are integers.  The specifier
  14082. governing the background color of the `default' face (you can
  14083. retrieve this specifier using `(face-background 'default)') is
  14084. of type `color', meaning its valid instantiators are strings naming
  14085. colors and color-instance objects.  For some types of specifiers,
  14086. such as `image' and `toolbar', the instantiators can be very
  14087. complex.  Generally this is documented in the appropriate predicate
  14088. function -- `color-specifier-p', `image-specifier-p',
  14089. `toolbar-specifier-p', etc.
  14090.  
  14091. NOTE: It does *not* work to give a VALUE of nil as a way of
  14092. removing the specifications for a locale.  Use `remove-specifier'
  14093. instead. (And keep in mind that, if you omit the LOCALE argument
  14094. to `remove-specifier', it removes *all* specifications!  If you
  14095. want to remove just the `global' specification, make sure to
  14096. specify a LOCALE of `global'.)
  14097.  
  14098. VALUE can also be a list of instantiators.  This means basically,
  14099. "try each one in turn until you get one that works".  This allows
  14100. you to give funky instantiators that may only work in some cases,
  14101. and provide more normal backups for the other cases. (For example,
  14102. you might like the color "darkseagreen2", but some X servers
  14103. don't recognize this color, so you could provide a backup
  14104. "forest green".  Color TTY devices probably won't recognize this
  14105. either, so you could provide a second backup "green".  You'd
  14106. do this by specifying this list of instantiators:
  14107.  
  14108. '("darkseagreen2" "forest green" "green")
  14109.  
  14110. VALUE can also be various more complicated forms; see below.
  14111.  
  14112. Optional argument TAG-SET is a tag or a list of tags, to be associated
  14113. with the VALUE.  Tags are symbols (usually naming device types, such
  14114. as `x' and `tty', or device classes, such as `color', `mono', and
  14115. `grayscale'); specifying a TAG-SET restricts the scope of VALUE to
  14116. devices that match all specified tags. (You can also create your
  14117. own tags using `define-specifier-tag', and use them to identify
  14118. specifications added by you, so you can remove them later.)
  14119.  
  14120. Optional argument HOW-TO-ADD should be either nil or one of the
  14121. symbols `prepend', `append', `remove-tag-set-prepend',
  14122. `remove-tag-set-append', `remove-locale', `remove-locale-type',
  14123. or `remove-all'.  This specifies what to do with existing
  14124. specifications in LOCALE (and possibly elsewhere in the specifier).
  14125. Most of the time, you do not need to worry about this argument;
  14126. the default behavior of `remove-tag-set-prepend' is usually fine.
  14127. See `copy-specifier' and `add-spec-to-specifier' for a full
  14128. description of what each of these means.
  14129.  
  14130. VALUE can actually be anything acceptable to `canonicalize-spec-list';
  14131. this includes, among other things:
  14132.  
  14133. -- a cons of a locale and an instantiator (or list of instantiators)
  14134. -- a cons of a tag or tag-set and an instantiator (or list of
  14135.    instantiators)
  14136. -- a cons of a locale and the previous type of item
  14137. -- a list of one or more of any of the previous types of items
  14138.  
  14139. However, in these cases, you cannot give a LOCALE or TAG-SET,
  14140. because they do not make sense. (You will probably get an error if
  14141. you try this.)
  14142.  
  14143. Finally, VALUE can itself be a specifier (of the same type as
  14144. SPECIFIER), if you want to copy specifications from one specifier
  14145. to another; this is equivalent to calling `copy-specifier', and
  14146. LOCALE, TAG-SET, and HOW-TO-ADD have the same semantics as with
  14147. that function.
  14148.  
  14149. Note that `set-specifier' is exactly complementary to `specifier-specs'
  14150. except in the case where SPECIFIER has no specs at all in it but nil
  14151. is a valid instantiator (in that case, `specifier-specs' will return
  14152. nil (meaning no specs) and `set-specifier' will interpret the `nil'
  14153. as meaning "I'm adding a global instantiator and its value is `nil'"),
  14154. or in strange cases where there is an ambiguity between a spec-list
  14155. and an inst-list, etc. (The built-in specifier types are designed
  14156. in such a way as to avoid any such ambiguities.)
  14157.  
  14158. NOTE: If you want to work with spec-lists, you should probably not
  14159. use either `set-specifier' or `specifier-specs', but should use the
  14160. lower-level functions `add-spec-list-to-specifier' and `specifier-spec-list'.
  14161. These functions always work with fully-qualified spec-lists; thus, there
  14162. is no possibility for ambiguity and no need to go through the function
  14163. `canonicalize-spec-list', which is potentially time-consuming.
  14164. Vbuilt-in-face-specifiers
  14165. A list of the built-in face properties that are specifiers.
  14166. Fface-property
  14167. Return FACE's value of the given PROPERTY.
  14168.  
  14169. If LOCALE is omitted, the FACE's actual value for PROPERTY will be
  14170.   returned.  For built-in properties, this will be a specifier object
  14171.   of a type appropriate to the property (e.g. a font or color
  14172.   specifier).  For other properties, this could be anything.
  14173.  
  14174. If LOCALE is supplied, then instead of returning the actual value,
  14175.   the specification(s) for the given locale or locale type will
  14176.   be returned.  This will only work if the actual value of
  14177.   PROPERTY is a specifier (this will always be the case for built-in
  14178.   properties, but not or not may apply to user-defined properties).
  14179.   If the actual value of PROPERTY is not a specifier, this value
  14180.   will simply be returned regardless of LOCALE.
  14181.  
  14182. The return value will be a list of instantiators (e.g. strings
  14183.   specifying a font or color name), or a list of specifications, each
  14184.   of which is a cons of a locale and a list of instantiators.
  14185.   Specifically, if LOCALE is a particular locale (a buffer, window,
  14186.   frame, device, or 'global), a list of instantiators for that locale
  14187.   will be returned.  Otherwise, if LOCALE is a locale type (one of
  14188.   the symbols 'buffer, 'window, 'frame, or 'device), the specifications
  14189.   for all locales of that type will be returned.  Finally, if LOCALE is
  14190.   'all, the specifications for all locales of all types will be returned.
  14191.  
  14192. The specifications in a specifier determine what the value of
  14193.   PROPERTY will be in a particular "domain" or set of circumstances,
  14194.   which is typically a particular Emacs window along with the buffer
  14195.   it contains and the frame and device it lies within.  The value
  14196.   is derived from the instantiator associated with the most specific
  14197.   locale (in the order buffer, window, frame, device, and 'global)
  14198.   that matches the domain in question.  In other words, given a domain
  14199.   (i.e. an Emacs window, usually), the specifier for PROPERTY will first
  14200.   be searched for a specification whose locale is the buffer contained
  14201.   within that window; then for a specification whose locale is the window
  14202.   itself; then for a specification whose locale is the frame that the
  14203.   window is contained within; etc.  The first instantiator that is
  14204.   valid for the domain (usually this means that the instantiator is
  14205.   recognized by the device [i.e. the X server or TTY device] that the
  14206.   domain is on.  The function `face-property-instance' actually does
  14207.   all this, and is used to determine how to display the face.
  14208.  
  14209. See `set-face-property' for the built-in property-names.
  14210. Fconvert-face-property-into-specifier
  14211. Convert PROPERTY on FACE into a specifier, if it's not already.
  14212. Fface-property-instance
  14213. Return the instance of FACE's PROPERTY in the specified DOMAIN.
  14214.  
  14215. Under most circumstances, DOMAIN will be a particular window,
  14216.   and the returned instance describes how the specified property
  14217.   actually is displayed for that window and the particular buffer
  14218.   in it.  Note that this may not be the same as how the property
  14219.   appears when the buffer is displayed in a different window or
  14220.   frame, or how the property appears in the same window if you
  14221.   switch to another buffer in that window; and in those cases,
  14222.   the returned instance would be different.
  14223.  
  14224. The returned instance will typically be a color-instance,
  14225.   font-instance, or pixmap-instance object, and you can query
  14226.   it using the appropriate object-specific functions.  For example,
  14227.   you could use `color-instance-rgb-components' to find out the
  14228.   RGB (red, green, and blue) components of how the 'background
  14229.   property of the 'highlight face is displayed in a particular
  14230.   window.  The results might be different from the results
  14231.   you would get for another window (perhaps the user
  14232.   specified a different color for the frame that window is on;
  14233.   or perhaps the same color was specified but the window is
  14234.   on a different X server, and that X server has different RGB
  14235.   values for the color from this one).
  14236.  
  14237. DOMAIN defaults to the selected window if omitted.
  14238.  
  14239. DOMAIN can be a frame or device, instead of a window.  The value
  14240.   returned for a such a domain is used in special circumstances
  14241.   when a more specific domain does not apply; for example, a frame
  14242.   value might be used for coloring a toolbar, which is conceptually
  14243.   attached to a frame rather than a particular window.  The value
  14244.   is also useful in determining what the value would be for a
  14245.   particular window within the frame or device, if it is not
  14246.   overridden by a more specific specification.
  14247.  
  14248. If PROPERTY does not name a built-in property, its value will
  14249.   simply be returned unless it is a specifier object, in which case
  14250.   it will be instanced using `specifier-instance'.
  14251.  
  14252. Optional arguments DEFAULT and NO-FALLBACK are the same as in
  14253.   `specifier-instance'.
  14254. Fface-property-matching-instance
  14255. Return the instance of FACE's PROPERTY matching MATCHSPEC in DOMAIN.
  14256. Currently the only useful value for MATCHSPEC is a charset, when used
  14257. in conjunction with the face's font; this allows you to retrieve a
  14258. font that can be used to display a particular charset, rather than just
  14259. any font.
  14260.  
  14261. Other than MATCHSPEC, this function is identical to `face-property-instance'.
  14262. See also `specifier-matching-instance' for a fuller description of the
  14263. matching process.
  14264. Fset-face-property
  14265. Change a property of a FACE.
  14266.  
  14267. NOTE: If you want to remove a property from a face, use `remove-face-property'
  14268.   rather than attempting to set a value of nil for the property.
  14269.  
  14270. For built-in properties, the actual value of the property is a
  14271.   specifier and you cannot change this; but you can change the
  14272.   specifications within the specifier, and that is what this function
  14273.   will do.  For user-defined properties, you can use this function
  14274.   to either change the actual value of the property or, if this value
  14275.   is a specifier, change the specifications within it.
  14276.  
  14277. If PROPERTY is a built-in property, the specifications to be added to
  14278.   this property can be supplied in many different ways:
  14279.  
  14280.   -- If VALUE is a simple instantiator (e.g. a string naming a font or
  14281.      color) or a list of instantiators, then the instantiator(s) will
  14282.      be added as a specification of the property for the given LOCALE
  14283.      (which defaults to 'global if omitted).
  14284.   -- If VALUE is a list of specifications (each of which is a cons of
  14285.      a locale and a list of instantiators), then LOCALE must be nil
  14286.      (it does not make sense to explicitly specify a locale in this
  14287.      case), and specifications will be added as given.
  14288.   -- If VALUE is a specifier (as would be returned by `face-property'
  14289.      if no LOCALE argument is given), then some or all of the
  14290.      specifications in the specifier will be added to the property.
  14291.      In this case, the function is really equivalent to
  14292.      `copy-specifier' and LOCALE has the same semantics (if it is
  14293.      a particular locale, the specification for the locale will be
  14294.      copied; if a locale type, specifications for all locales of
  14295.      that type will be copied; if nil or 'all, then all
  14296.      specifications will be copied).
  14297.  
  14298. HOW-TO-ADD should be either nil or one of the symbols 'prepend,
  14299.   'append, 'remove-tag-set-prepend, 'remove-tag-set-append, 'remove-locale,
  14300.   'remove-locale-type, or 'remove-all.  See `copy-specifier' and
  14301.   `add-spec-to-specifier' for a description of what each of
  14302.   these means.  Most of the time, you do not need to worry about
  14303.   this argument; the default behavior usually is fine.
  14304.  
  14305. In general, it is OK to pass an instance object (e.g. as returned
  14306.   by `face-property-instance') as an instantiator in place of
  14307.   an actual instantiator.  In such a case, the instantiator used
  14308.   to create that instance object will be used (for example, if
  14309.   you set a font-instance object as the value of the 'font
  14310.   property, then the font name used to create that object will
  14311.   be used instead).  If some cases, however, doing this
  14312.   conversion does not make sense, and this will be noted in
  14313.   the documentation for particular types of instance objects.
  14314.  
  14315. If PROPERTY is not a built-in property, then this function will
  14316.   simply set its value if LOCALE is nil.  However, if LOCALE is
  14317.   given, then this function will attempt to add VALUE as the
  14318.   instantiator for the given LOCALE, using `add-spec-to-specifier'.
  14319.   If the value of the property is not a specifier, it will
  14320.   automatically be converted into a 'generic specifier.
  14321.  
  14322.  
  14323. The following symbols have predefined meanings:
  14324.  
  14325.  foreground         The foreground color of the face.
  14326.                     For valid instantiators, see `color-specifier-p'.
  14327.             
  14328.  background         The background color of the face.
  14329.                     For valid instantiators, see `color-specifier-p'.
  14330.             
  14331.  font               The font used to display text covered by this face.
  14332.                     For valid instantiators, see `font-specifier-p'.
  14333.             
  14334.  display-table      The display table of the face.
  14335.                     This should be a vector of 256 elements.
  14336.             
  14337.  background-pixmap  The pixmap displayed in the background of the face.
  14338.                     Only used by faces on X devices.
  14339.                     For valid instantiators, see `image-specifier-p'.
  14340.  
  14341.  underline          Underline all text covered by this face.
  14342.                     For valid instantiators, see `face-boolean-specifier-p'.
  14343.  
  14344.  strikethru         Draw a line through all text covered by this face.
  14345.                     For valid instantiators, see `face-boolean-specifier-p'.
  14346.  
  14347.  highlight          Highlight all text covered by this face.
  14348.                     Only used by faces on TTY devices.
  14349.                     For valid instantiators, see `face-boolean-specifier-p'.
  14350.             
  14351.  dim                Dim all text covered by this face.
  14352.                     Only used by faces on TTY devices.
  14353.                     For valid instantiators, see `face-boolean-specifier-p'.
  14354.             
  14355.  blinking           Blink all text covered by this face.
  14356.                     Only used by faces on TTY devices.
  14357.                     For valid instantiators, see `face-boolean-specifier-p'.
  14358.             
  14359.  reverse            Reverse the foreground and background colors.
  14360.                     Only used by faces on TTY devices.
  14361.                     For valid instantiators, see `face-boolean-specifier-p'.
  14362.             
  14363.  doc-string         Description of what the face's normal use is.
  14364.                     NOTE: This is not a specifier, unlike all
  14365.                     the other built-in properties, and cannot
  14366.                     contain locale-specific values.
  14367. Fremove-face-property
  14368. Remove a property from a face.
  14369. For built-in properties, this is analogous to `remove-specifier'.
  14370. See `remove-specifier' for the meaning of the LOCALE, TAG-SET, and EXACT-P
  14371. arguments.
  14372. Freset-face
  14373. Clear all existing built-in specifications from FACE.
  14374. This makes FACE inherit all its display properties from 'default.
  14375. WARNING: Be absolutely sure you want to do this!!!  It is a dangerous
  14376. operation and is not undoable.
  14377.  
  14378. The arguments LOCALE, TAG-SET and EXACT-P are the same as for
  14379. `remove-specifier'.
  14380. Fset-face-parent
  14381. Set the parent of FACE to PARENT, for all properties.
  14382. This makes all properties of FACE inherit from PARENT.
  14383. Fface-doc-string
  14384. Return the documentation string for FACE.
  14385. Fset-face-doc-string
  14386. Change the documentation string of FACE to DOC-STRING.
  14387. Fface-font-name
  14388. Return the font name of the given face, or nil if it is unspecified.
  14389. DOMAIN is as in `face-font-instance'.
  14390. Fface-font
  14391. Return the font of the given face, or nil if it is unspecified.
  14392.  
  14393. FACE may be either a face object or a symbol representing a face.
  14394.  
  14395. LOCALE may be a locale (the instantiators for that particular locale
  14396.   will be returned), a locale type (the specifications for all locales
  14397.   of that type will be returned), 'all (all specifications will be
  14398.   returned), or nil (the actual specifier object will be returned).
  14399.  
  14400. See `face-property' for more information.
  14401. Fface-font-instance
  14402. Return the instance of the given face's font in the given domain.
  14403.  
  14404. FACE may be either a face object or a symbol representing a face.
  14405.  
  14406. Normally DOMAIN will be a window or nil (meaning the selected window),
  14407.   and an instance object describing how the font appears in that
  14408.   particular window and buffer will be returned.
  14409.  
  14410. See `face-property-instance' for more information.
  14411. Fset-face-font
  14412. Change the font of the given face.
  14413.  
  14414. FACE may be either a face object or a symbol representing a face.
  14415.  
  14416. FONT should be an instantiator (see `font-specifier-p'), a list of
  14417.   instantiators, an alist of specifications (each mapping a
  14418.   locale to an instantiator list), or a font specifier object.
  14419.  
  14420. If FONT is an alist, LOCALE must be omitted.  If FONT is a
  14421.   specifier object, LOCALE can be a locale, a locale type, 'all,
  14422.   or nil; see `copy-specifier' for its semantics.  Otherwise LOCALE
  14423.   specifies the locale under which the specified instantiator(s)
  14424.   will be added, and defaults to 'global.
  14425.  
  14426. See `set-face-property' for more information.
  14427. Fface-foreground
  14428. Return the foreground of the given face, or nil if it is unspecified.
  14429.  
  14430. FACE may be either a face object or a symbol representing a face.
  14431.  
  14432. LOCALE may be a locale (the instantiators for that particular locale
  14433.   will be returned), a locale type (the specifications for all locales
  14434.   of that type will be returned), 'all (all specifications will be
  14435.   returned), or nil (the actual specifier object will be returned).
  14436.  
  14437. See `face-property' for more information.
  14438. Fface-foreground-instance
  14439. Return the instance of the given face's foreground in the given domain.
  14440.  
  14441. FACE may be either a face object or a symbol representing a face.
  14442.  
  14443. Normally DOMAIN will be a window or nil (meaning the selected window),
  14444.   and an instance object describing how the foreground appears in that
  14445.   particular window and buffer will be returned.
  14446.  
  14447. See `face-property-instance' for more information.
  14448. Fface-foreground-name
  14449. Return the name of the given face's foreground color in the given domain.
  14450.  
  14451. FACE may be either a face object or a symbol representing a face.
  14452.  
  14453. Normally DOMAIN will be a window or nil (meaning the selected window),
  14454.   and an instance object describing how the background appears in that
  14455.   particular window and buffer will be returned.
  14456.  
  14457. See `face-property-instance' for more information.
  14458. Fset-face-foreground
  14459. Change the foreground of the given face.
  14460.  
  14461. FACE may be either a face object or a symbol representing a face.
  14462.  
  14463. COLOR should be an instantiator (see `color-specifier-p'), a list of
  14464.   instantiators, an alist of specifications (each mapping a locale to
  14465.   an instantiator list), or a color specifier object.
  14466.  
  14467. If COLOR is an alist, LOCALE must be omitted.  If COLOR is a
  14468.   specifier object, LOCALE can be a locale, a locale type, 'all,
  14469.   or nil; see `copy-specifier' for its semantics.  Otherwise LOCALE
  14470.   specifies the locale under which the specified instantiator(s)
  14471.   will be added, and defaults to 'global.
  14472.  
  14473. See `set-face-property' for more information.
  14474. Fface-background
  14475. Return the background of the given face, or nil if it is unspecified.
  14476.  
  14477. FACE may be either a face object or a symbol representing a face.
  14478.  
  14479. LOCALE may be a locale (the instantiators for that particular locale
  14480.   will be returned), a locale type (the specifications for all locales
  14481.   of that type will be returned), 'all (all specifications will be
  14482.   returned), or nil (the actual specifier object will be returned).
  14483.  
  14484. See `face-property' for more information.
  14485. Fface-background-instance
  14486. Return the instance of the given face's background in the given domain.
  14487.  
  14488. FACE may be either a face object or a symbol representing a face.
  14489.  
  14490. Normally DOMAIN will be a window or nil (meaning the selected window),
  14491.   and an instance object describing how the background appears in that
  14492.   particular window and buffer will be returned.
  14493.  
  14494. See `face-property-instance' for more information.
  14495. Fface-background-name
  14496. Return the name of the given face's background color in the given domain.
  14497.  
  14498. FACE may be either a face object or a symbol representing a face.
  14499.  
  14500. Normally DOMAIN will be a window or nil (meaning the selected window),
  14501.   and an instance object describing how the background appears in that
  14502.   particular window and buffer will be returned.
  14503.  
  14504. See `face-property-instance' for more information.
  14505. Fset-face-background
  14506. Change the background of the given face.
  14507.  
  14508. FACE may be either a face object or a symbol representing a face.
  14509.  
  14510. COLOR should be an instantiator (see `color-specifier-p'), a list of
  14511.   instantiators, an alist of specifications (each mapping a locale to
  14512.   an instantiator list), or a color specifier object.
  14513.  
  14514. If COLOR is an alist, LOCALE must be omitted.  If COLOR is a
  14515.   specifier object, LOCALE can be a locale, a locale type, 'all,
  14516.   or nil; see `copy-specifier' for its semantics.  Otherwise LOCALE
  14517.   specifies the locale under which the specified instantiator(s)
  14518.   will be added, and defaults to 'global.
  14519.  
  14520. See `set-face-property' for more information.
  14521. Fface-background-pixmap
  14522. Return the background pixmap of the given face, or nil if it is unspecified.
  14523. This property is only used on X devices.
  14524.  
  14525. FACE may be either a face object or a symbol representing a face.
  14526.  
  14527. LOCALE may be a locale (the instantiators for that particular locale
  14528.   will be returned), a locale type (the specifications for all locales
  14529.   of that type will be returned), 'all (all specifications will be
  14530.   returned), or nil (the actual specifier object will be returned).
  14531.  
  14532. See `face-property' for more information.
  14533. Fface-background-pixmap-instance
  14534. Return the instance of the given face's background pixmap in the given domain.
  14535.  
  14536. FACE may be either a face object or a symbol representing a face.
  14537.  
  14538. Normally DOMAIN will be a window or nil (meaning the selected window),
  14539.   and an instance object describing how the background appears in that
  14540.   particular window and buffer will be returned.
  14541.  
  14542. See `face-property-instance' for more information.
  14543. Fset-face-background-pixmap
  14544. Change the background pixmap of the given face.
  14545. This property is only used on X devices.
  14546.  
  14547. FACE may be either a face object or a symbol representing a face.
  14548.  
  14549. PIXMAP should be an instantiator (see `image-specifier-p'), a list
  14550.   of instantiators, an alist of specifications (each mapping a locale
  14551.   to an instantiator list), or an image specifier object.
  14552.  
  14553. If PIXMAP is an alist, LOCALE must be omitted.  If PIXMAP is a
  14554.   specifier object, LOCALE can be a locale, a locale type, 'all,
  14555.   or nil; see `copy-specifier' for its semantics.  Otherwise LOCALE
  14556.   specifies the locale under which the specified instantiator(s)
  14557.   will be added, and defaults to 'global.
  14558.  
  14559. See `set-face-property' for more information.
  14560. Fface-display-table
  14561. Return the display table of the given face.
  14562.  
  14563. A vector (as returned by `make-display-table') will be returned.
  14564.  
  14565. LOCALE may be a locale (the instantiators for that particular locale
  14566.   will be returned), a locale type (the specifications for all locales
  14567.   of that type will be returned), 'all (all specifications will be
  14568.   returned), or nil (the actual specifier object will be returned).
  14569.  
  14570. See `face-property' for more information.
  14571. Fface-display-table-instance
  14572. Return the instance of FACE's display table in DOMAIN.
  14573. A vector (as returned by `make-display-table') will be returned.
  14574.  
  14575. See `face-property-instance' for the semantics of the DOMAIN argument.
  14576. Fset-face-display-table
  14577. Change the display table of the given face.
  14578. DISPLAY-TABLE should be a vector as returned by `make-display-table'.
  14579.  
  14580. See `set-face-property' for the semantics of the LOCALE, TAG-SET, and
  14581.   HOW-TO-ADD arguments.
  14582. Fface-underline-p
  14583. Return whether the given face is underlined.
  14584. See `face-property-instance' for the semantics of the DOMAIN argument.
  14585. Fset-face-underline-p
  14586. Change whether the given face is underlined.
  14587. UNDERLINE-P is normally a face-boolean instantiator; see
  14588.  `face-boolean-specifier-p'.
  14589. See `set-face-property' for the semantics of the LOCALE, TAG-SET, and
  14590.  HOW-TO-ADD arguments.
  14591. Fface-strikethru-p
  14592. Return whether the given face is strikethru-d (i.e. struck through).
  14593. See `face-property-instance' for the semantics of the DOMAIN argument.
  14594. Fset-face-strikethru-p
  14595. Change whether the given face is strikethru-d (i.e. struck through).
  14596. STRIKETHRU-P is normally a face-boolean instantiator; see
  14597.  `face-boolean-specifier-p'.
  14598. See `set-face-property' for the semantics of the LOCALE, TAG-SET, and
  14599.  HOW-TO-ADD arguments.
  14600. Fface-highlight-p
  14601. Return whether the given face is highlighted (TTY domains only).
  14602. See `face-property-instance' for the semantics of the DOMAIN argument.
  14603. Fset-face-highlight-p
  14604. Change whether the given face is highlighted (TTY locales only).
  14605. HIGHLIGHT-P is normally a face-boolean instantiator; see
  14606.  `face-boolean-specifier-p'.
  14607. See `set-face-property' for the semantics of the LOCALE, TAG-SET, and
  14608.  HOW-TO-ADD arguments.
  14609. Fface-dim-p
  14610. Return whether the given face is dimmed (TTY domains only).
  14611. See `face-property-instance' for the semantics of the DOMAIN argument.
  14612. Fset-face-dim-p
  14613. Change whether the given face is dimmed (TTY locales only).
  14614. DIM-P is normally a face-boolean instantiator; see
  14615.  `face-boolean-specifier-p'.
  14616. See `set-face-property' for the semantics of the LOCALE, TAG-SET, and
  14617.  HOW-TO-ADD arguments.
  14618. Fface-blinking-p
  14619. Return whether the given face is blinking (TTY domains only).
  14620. See `face-property-instance' for the semantics of the DOMAIN argument.
  14621. Fset-face-blinking-p
  14622. Change whether the given face is blinking (TTY locales only).
  14623. BLINKING-P is normally a face-boolean instantiator; see
  14624.  `face-boolean-specifier-p'.
  14625. See `set-face-property' for the semantics of the LOCALE, TAG-SET, and
  14626.  HOW-TO-ADD arguments.
  14627. Fface-reverse-p
  14628. Return whether the given face is reversed (TTY domains only).
  14629. See `face-property-instance' for the semantics of the DOMAIN argument.
  14630. Fset-face-reverse-p
  14631. Change whether the given face is reversed (TTY locales only).
  14632. REVERSE-P is normally a face-boolean instantiator; see
  14633.  `face-boolean-specifier-p'.
  14634. See `set-face-property' for the semantics of the LOCALE, TAG-SET, and
  14635.  HOW-TO-ADD arguments.
  14636. Fface-equal
  14637. True if the given faces will display in the same way.
  14638. See `face-property-instance' for the semantics of the DOMAIN argument.
  14639. Fface-differs-from-default-p
  14640. True if the given face will display differently from the default face.
  14641. See `face-property-instance' for the semantics of the DOMAIN argument.
  14642. Ffrob-face-property
  14643. Change the specifier for FACE's PROPERTY according to FUNC, in LOCALE.
  14644. This function is ugly and messy and is primarily used as an internal
  14645. helper function for `make-face-bold' et al., so you probably don't
  14646. want to use it or read the rest of the documentation.  But if you do ...
  14647.  
  14648. FUNC should be a function of two arguments (an instance and a device)
  14649. that returns a modified name that is valid for the given device.
  14650. If LOCALE specifies a valid domain (i.e. a window, frame, or device),
  14651. this function instantiates the specifier over that domain, applies FUNC
  14652. to the resulting instance, and adds the result back as an instantiator
  14653. for that locale.  Otherwise, LOCALE should be a locale, locale type, or
  14654. 'all (defaults to 'all if omitted).  For each specification thusly
  14655. included: if the locale given is a valid domain, FUNC will be
  14656. iterated over all valid instantiators for the device of the domain
  14657. until a non-nil result is found (if there is no such result, the
  14658. first valid instantiator is used), and that result substituted for
  14659. the specification; otherwise, the process just outlined is
  14660. iterated over each existing device and the concatenated results
  14661. substituted for the specification.
  14662. Fmake-face-bold
  14663. Make the face bold, if possible.
  14664. This will attempt to make the font bold for X locales and will set the
  14665. highlight flag for TTY locales.
  14666.  
  14667. If LOCALE is nil, omitted, or `all', this will attempt to frob all
  14668. font specifications for FACE to make them appear bold.  Similarly, if
  14669. LOCALE is a locale type, this frobs all font specifications for locales
  14670. of that type.  If LOCALE is a particular locale, what happens depends on
  14671. what sort of locale is given.  If you gave a device, frame, or window,
  14672. then it's always possible to determine what the font actually will be,
  14673. so this is determined and the resulting font is frobbed and added back as a
  14674. specification for this locale.  If LOCALE is a buffer, however, you can't
  14675. determine what the font will actually be unless there's actually a
  14676. specification given for that particular buffer (otherwise, it depends
  14677. on what window and frame the buffer appears in, and might not even be
  14678. well-defined if the buffer appears multiple times in different places);
  14679. therefore you will get an error unless there's a specification for the
  14680. buffer.
  14681.  
  14682. Finally, in some cases (specifically, when LOCALE is not a locale type),
  14683. if the frobbing didn't actually make the font look any different
  14684. (this happens, for example, if your font specification is already bold
  14685. or has no bold equivalent), and currently looks like the font of the
  14686. 'default face, it is set to inherit from the 'bold face.  This is kludgy
  14687. but it makes `make-face-bold' have more intuitive behavior in many
  14688. circumstances.
  14689. Fmake-face-italic
  14690. Make the face italic, if possible.
  14691. This will attempt to make the font italic for X locales and will set
  14692. the underline flag for TTY locales.
  14693. See `make-face-bold' for the semantics of the LOCALE argument and
  14694. for more specifics on exactly how this function works.
  14695. Fmake-face-bold-italic
  14696. Make the face bold and italic, if possible.
  14697. This will attempt to make the font bold-italic for X locales and will
  14698. set the highlight and underline flags for TTY locales.
  14699. See `make-face-bold' for the semantics of the LOCALE argument and
  14700. for more specifics on exactly how this function works.
  14701. Fmake-face-unbold
  14702. Make the face non-bold, if possible.
  14703. This will attempt to make the font non-bold for X locales and will
  14704. unset the highlight flag for TTY locales.
  14705. See `make-face-bold' for the semantics of the LOCALE argument and
  14706. for more specifics on exactly how this function works.
  14707. Fmake-face-unitalic
  14708. Make the face non-italic, if possible.
  14709. This will attempt to make the font non-italic for X locales and will
  14710. unset the underline flag for TTY locales.
  14711. See `make-face-bold' for the semantics of the LOCALE argument and
  14712. for more specifics on exactly how this function works.
  14713. Fmake-face-smaller
  14714. Make the font of the given face be smaller, if possible.
  14715. LOCALE works as in `make-face-bold' et al., but the ``inheriting-
  14716. from-the-bold-face'' operations described there are not done
  14717. because they don't make sense in this context.
  14718. Fmake-face-larger
  14719. Make the font of the given face be larger, if possible.
  14720. See `make-face-smaller' for the semantics of the LOCALE argument.
  14721. Finvert-face
  14722. Swap the foreground and background colors of the face.
  14723. Fface-ascent
  14724. Return the ascent of a face.
  14725. See `face-property-instance' for the semantics of the DOMAIN argument.
  14726. Fface-descent
  14727. Return the descent of a face.
  14728. See `face-property-instance' for the semantics of the DOMAIN argument.
  14729. Fface-width
  14730. Return the width of a face.
  14731. See `face-property-instance' for the semantics of the DOMAIN argument.
  14732. Fface-height
  14733. Return the height of a face.
  14734. See `face-property-instance' for the semantics of the DOMAIN argument.
  14735. Fface-proportional-p
  14736. Return whether FACE is proportional.
  14737. See `face-property-instance' for the semantics of the DOMAIN argument.
  14738. Fget-frame-background-mode
  14739. Detect background mode for FRAME.
  14740. Fextract-custom-frame-properties
  14741. Return a plist with the frame properties of FRAME used by custom.
  14742. Fface-spec-set
  14743. Set FACE's face attributes according to the first matching entry in SPEC.
  14744. If optional FRAME is non-nil, set it for that frame only.
  14745. If it is nil, then apply SPEC to each frame individually.
  14746. See `defface' for information about SPEC.
  14747. Fface-display-set
  14748. Set FACE to the attributes to the first matching entry in SPEC.
  14749. Iff optional FRAME is non-nil, set it for that frame only.
  14750. See `defface' for information about SPEC.
  14751. Vdefault-custom-frame-properties
  14752. The frame properties used for the global faces.
  14753. Frames not matching these propertiess should have frame local faces.
  14754. The value should be nil, if uninitialized, or a plist otherwise.  
  14755. See `defface' for a list of valid keys and values for the plist.
  14756. Fget-custom-frame-properties
  14757. Return a plist with the frame properties of FRAME used by custom.
  14758. If FRAME is nil, return the default frame properties.
  14759. Fface-spec-set-match-display
  14760. Non-nil iff DISPLAY matches FRAME.
  14761. DISPLAY is part of a spec such as can be used in `defface'.
  14762. If FRAME is nil, the current FRAME is used.
  14763. Frelevant-custom-frames
  14764. List of frames whose custom properties differ from the default.
  14765. Finitialize-custom-faces
  14766. Initialize all custom faces for FRAME.
  14767. If FRAME is nil or omitted, initialize them for all frames.
  14768. Fcustom-initialize-frame
  14769. Initialize frame-local custom faces for FRAME if necessary.
  14770. Fmake-empty-face
  14771. Like `make-face', but doesn't query the resource database.
  14772. Finit-face-from-resources
  14773. Initialize FACE from the resource database.
  14774. If LOCALE is specified, it should be a frame, device, or 'global, and
  14775. the face will be resourced over that locale.  Otherwise, the face will
  14776. be resourced over all possible locales (i.e. all frames, all devices,
  14777. and 'global).
  14778. Finit-other-random-faces
  14779. Initializes the colors and fonts of the bold, italic, bold-italic,
  14780. zmacs-region, list-mode-item-selected, highlight, primary-selection,
  14781. secondary-selection, and isearch faces when each device is created.  If
  14782. you want to add code to do stuff like this, use the create-device-hook.
  14783. Fset-face-stipple
  14784. Change the stipple pixmap of face FACE to PIXMAP.
  14785. This is an Emacs compatibility function; consider using
  14786. set-face-background-pixmap instead.
  14787.  
  14788. PIXMAP should be a string, the name of a file of pixmap data.
  14789. The directories listed in the `x-bitmap-file-path' variable are searched.
  14790.  
  14791. Alternatively, PIXMAP may be a list of the form (WIDTH HEIGHT
  14792. DATA) where WIDTH and HEIGHT are the size in pixels, and DATA is
  14793. a string, containing the raw bits of the bitmap.  XBM data is
  14794. expected in this case, other types of image data will not work.
  14795.  
  14796. If the optional FRAME argument is provided, change only
  14797. in that frame; otherwise change each frame.
  14798. Fmake-image-specifier
  14799. Create a new `image' specifier object with the given specification list.
  14800. SPEC-LIST can be a list of specifications (each of which is a cons of a
  14801. locale and a list of instantiators), a single instantiator, or a list
  14802. of instantiators.  See `make-specifier' for more information about
  14803. specifiers.
  14804. Vbuilt-in-glyph-specifiers
  14805. A list of the built-in face properties that are specifiers.
  14806. Fglyph-property
  14807. Return GLYPH's value of the given PROPERTY.
  14808.  
  14809. If LOCALE is omitted, the GLYPH's actual value for PROPERTY will be
  14810.   returned.  For built-in properties, this will be a specifier object
  14811.   of a type appropriate to the property (e.g. a font or color
  14812.   specifier).  For other properties, this could be anything.
  14813.  
  14814. If LOCALE is supplied, then instead of returning the actual value,
  14815.   the specification(s) for the given locale or locale type will
  14816.   be returned.  This will only work if the actual value of
  14817.   PROPERTY is a specifier (this will always be the case for built-in
  14818.   properties, but not or not may apply to user-defined properties).
  14819.   If the actual value of PROPERTY is not a specifier, this value
  14820.   will simply be returned regardless of LOCALE.
  14821.  
  14822. The return value will be a list of instantiators (e.g. strings
  14823.   specifying a font or color name), or a list of specifications, each
  14824.   of which is a cons of a locale and a list of instantiators.
  14825.   Specifically, if LOCALE is a particular locale (a buffer, window,
  14826.   frame, device, or 'global), a list of instantiators for that locale
  14827.   will be returned.  Otherwise, if LOCALE is a locale type (one of
  14828.   the symbols 'buffer, 'window, 'frame, 'device, 'device-class, or
  14829.   'device-type), the specifications for all locales of that type will
  14830.   be returned.  Finally, if LOCALE is 'all, the specifications for all
  14831.   locales of all types will be returned.
  14832.  
  14833. The specifications in a specifier determine what the value of
  14834.   PROPERTY will be in a particular "domain" or set of circumstances,
  14835.   which is typically a particular Emacs window along with the buffer
  14836.   it contains and the frame and device it lies within.  The value
  14837.   is derived from the instantiator associated with the most specific
  14838.   locale (in the order buffer, window, frame, device, and 'global)
  14839.   that matches the domain in question.  In other words, given a domain
  14840.   (i.e. an Emacs window, usually), the specifier for PROPERTY will first
  14841.   be searched for a specification whose locale is the buffer contained
  14842.   within that window; then for a specification whose locale is the window
  14843.   itself; then for a specification whose locale is the frame that the
  14844.   window is contained within; etc.  The first instantiator that is
  14845.   valid for the domain (usually this means that the instantiator is
  14846.   recognized by the device [i.e. the X server or TTY device] that the
  14847.   domain is on.  The function `glyph-property-instance' actually does
  14848.   all this, and is used to determine how to display the glyph.
  14849.  
  14850. See `set-glyph-property' for the built-in property-names.
  14851. Fconvert-glyph-property-into-specifier
  14852. Convert PROPERTY on GLYPH into a specifier, if it's not already.
  14853. Fglyph-property-instance
  14854. Return the instance of GLYPH's PROPERTY in the specified DOMAIN.
  14855.  
  14856. Under most circumstances, DOMAIN will be a particular window,
  14857.   and the returned instance describes how the specified property
  14858.   actually is displayed for that window and the particular buffer
  14859.   in it.  Note that this may not be the same as how the property
  14860.   appears when the buffer is displayed in a different window or
  14861.   frame, or how the property appears in the same window if you
  14862.   switch to another buffer in that window; and in those cases,
  14863.   the returned instance would be different.
  14864.  
  14865. DOMAIN defaults to the selected window if omitted.
  14866.  
  14867. DOMAIN can be a frame or device, instead of a window.  The value
  14868.   returned for a such a domain is used in special circumstances
  14869.   when a more specific domain does not apply; for example, a frame
  14870.   value might be used for coloring a toolbar, which is conceptually
  14871.   attached to a frame rather than a particular window.  The value
  14872.   is also useful in determining what the value would be for a
  14873.   particular window within the frame or device, if it is not
  14874.   overridden by a more specific specification.
  14875.  
  14876. If PROPERTY does not name a built-in property, its value will
  14877.   simply be returned unless it is a specifier object, in which case
  14878.   it will be instanced using `specifier-instance'.
  14879.  
  14880. Optional arguments DEFAULT and NO-FALLBACK are the same as in
  14881.   `specifier-instance'.
  14882. Fset-glyph-property
  14883. Change a property of a GLYPH.
  14884.  
  14885. NOTE: If you want to remove a property from a glyph, use
  14886.   `remove-glyph-property' rather than attempting to set a value of nil
  14887.    for the property.
  14888.  
  14889. For built-in properties, the actual value of the property is a
  14890.   specifier and you cannot change this; but you can change the
  14891.   specifications within the specifier, and that is what this function
  14892.   will do.  For user-defined properties, you can use this function
  14893.   to either change the actual value of the property or, if this value
  14894.   is a specifier, change the specifications within it.
  14895.  
  14896. If PROPERTY is a built-in property, the specifications to be added to
  14897.   this property can be supplied in many different ways:
  14898.  
  14899.   -- If VALUE is a simple instantiator (e.g. a string naming a font or
  14900.      color) or a list of instantiators, then the instantiator(s) will
  14901.      be added as a specification of the property for the given LOCALE
  14902.      (which defaults to 'global if omitted).
  14903.   -- If VALUE is a list of specifications (each of which is a cons of
  14904.      a locale and a list of instantiators), then LOCALE must be nil
  14905.      (it does not make sense to explicitly specify a locale in this
  14906.      case), and specifications will be added as given.
  14907.   -- If VALUE is a specifier (as would be returned by `glyph-property'
  14908.      if no LOCALE argument is given), then some or all of the
  14909.      specifications in the specifier will be added to the property.
  14910.      In this case, the function is really equivalent to
  14911.      `copy-specifier' and LOCALE has the same semantics (if it is
  14912.      a particular locale, the specification for the locale will be
  14913.      copied; if a locale type, specifications for all locales of
  14914.      that type will be copied; if nil or 'all, then all
  14915.      specifications will be copied).
  14916.  
  14917. HOW-TO-ADD should be either nil or one of the symbols 'prepend,
  14918.   'append, 'remove-tag-set-prepend, 'remove-tag-set-append, 'remove-locale,
  14919.   'remove-locale-type, or 'remove-all.  See `copy-specifier' and
  14920.   `add-spec-to-specifier' for a description of what each of
  14921.   these means.  Most of the time, you do not need to worry about
  14922.   this argument; the default behavior usually is fine.
  14923.  
  14924. In general, it is OK to pass an instance object (e.g. as returned
  14925.   by `glyph-property-instance') as an instantiator in place of
  14926.   an actual instantiator.  In such a case, the instantiator used
  14927.   to create that instance object will be used (for example, if
  14928.   you set a font-instance object as the value of the 'font
  14929.   property, then the font name used to create that object will
  14930.   be used instead).  If some cases, however, doing this
  14931.   conversion does not make sense, and this will be noted in
  14932.   the documentation for particular types of instance objects.
  14933.  
  14934. If PROPERTY is not a built-in property, then this function will
  14935.   simply set its value if LOCALE is nil.  However, if LOCALE is
  14936.   given, then this function will attempt to add VALUE as the
  14937.   instantiator for the given LOCALE, using `add-spec-to-specifier'.
  14938.   If the value of the property is not a specifier, it will
  14939.   automatically be converted into a 'generic specifier.
  14940.  
  14941.  
  14942. The following symbols have predefined meanings:
  14943.  
  14944.  image            The image used to display the glyph.
  14945.  
  14946.  baseline        Percent above baseline that glyph is to be
  14947.             displayed.
  14948.  
  14949.  contrib-p        Whether the glyph contributes to the
  14950.             height of the line it's on.
  14951.  
  14952.  face            Face of this glyph (*not* a specifier).
  14953. Fremove-glyph-property
  14954. Remove a property from a glyph.
  14955. For built-in properties, this is analogous to `remove-specifier'.
  14956. See `remove-specifier' for the meaning of the LOCALE, TAG-SET, and EXACT-P
  14957.   arguments.
  14958. Fglyph-face
  14959. Return the face of GLYPH.
  14960. Fset-glyph-face
  14961. Change the face of GLYPH to FACE.
  14962. Fglyph-image
  14963. Return the image of the given glyph, or nil if it is unspecified.
  14964.  
  14965. LOCALE may be a locale (the instantiators for that particular locale
  14966.   will be returned), a locale type (the specifications for all locales
  14967.   of that type will be returned), 'all (all specifications will be
  14968.   returned), or nil (the actual specifier object will be returned).
  14969.  
  14970. See `glyph-property' for more information.
  14971. Fglyph-image-instance
  14972. Return the instance of the given glyph's image in the given domain.
  14973.  
  14974. Normally DOMAIN will be a window or nil (meaning the selected window),
  14975.   and an instance object describing how the image appears in that
  14976.   particular window and buffer will be returned.
  14977.  
  14978. See `glyph-property-instance' for more information.
  14979. Fset-glyph-image
  14980. Change the image of the given glyph.
  14981.  
  14982. SPEC should be an instantiator (a string or vector; see
  14983.   `image-specifier-p' for a description of possible values here),
  14984.   a list of (possibly tagged) instantiators, an alist of specifications
  14985.   (each mapping a locale to an instantiator list), or an image specifier
  14986.   object.
  14987.  
  14988. If SPEC is an alist, LOCALE must be omitted.  If SPEC is a
  14989.   specifier object, LOCALE can be a locale, a locale type, 'all,
  14990.   or nil; see `copy-specifier' for its semantics.  Otherwise LOCALE
  14991.   specifies the locale under which the specified instantiator(s)
  14992.   will be added, and defaults to 'global.
  14993.  
  14994. See `set-glyph-property' for more information.
  14995. Fglyph-contrib-p
  14996. Return whether GLYPH contributes to its line height.
  14997.  
  14998. LOCALE may be a locale (the instantiators for that particular locale
  14999.   will be returned), a locale type (the specifications for all locales
  15000.   of that type will be returned), 'all (all specifications will be
  15001.   returned), or nil (the actual specifier object will be returned).
  15002.  
  15003. See `glyph-property' for more information.
  15004. Fglyph-contrib-p-instance
  15005. Return the instance of the GLYPH's 'contrib-p property in the given domain.
  15006.  
  15007. Normally DOMAIN will be a window or nil (meaning the selected window),
  15008.   and an instance object describing what the 'contrib-p property is in
  15009.   that particular window and buffer will be returned.
  15010.  
  15011. See `glyph-property-instance' for more information.
  15012. Fset-glyph-contrib-p
  15013. Change the contrib-p of the given glyph.
  15014.  
  15015. SPEC should be an instantiator (t or nil), a list of (possibly
  15016.   tagged) instantiators, an alist of specifications (each mapping a
  15017.   locale to an instantiator list), or a boolean specifier object.
  15018.  
  15019. If SPEC is an alist, LOCALE must be omitted.  If SPEC is a
  15020.   specifier object, LOCALE can be a locale, a locale type, 'all,
  15021.   or nil; see `copy-specifier' for its semantics.  Otherwise LOCALE
  15022.   specifies the locale under which the specified instantiator(s)
  15023.   will be added, and defaults to 'global.
  15024.  
  15025. See `set-glyph-property' for more information.
  15026. Fglyph-baseline
  15027. Return the baseline of the given glyph, or nil if it is unspecified.
  15028.  
  15029. LOCALE may be a locale (the instantiators for that particular locale
  15030.   will be returned), a locale type (the specifications for all locales
  15031.   of that type will be returned), 'all (all specifications will be
  15032.   returned), or nil (the actual specifier object will be returned).
  15033.  
  15034. See `glyph-property' for more information.
  15035. Fglyph-baseline-instance
  15036. Return the instance of the given glyph's baseline in the given domain.
  15037.  
  15038. Normally DOMAIN will be a window or nil (meaning the selected window),
  15039.   and an integer or nil (specifying the baseline in that particular
  15040.   window and buffer) will be returned.
  15041.  
  15042. See `glyph-property-instance' for more information.
  15043. Fset-glyph-baseline
  15044. Change the baseline of the given glyph.
  15045.  
  15046. SPEC should be an instantiator (an integer [a percentage above the
  15047.   baseline of the line the glyph is on] or nil), a list of (possibly
  15048.   tagged) instantiators, an alist of specifications (each mapping a
  15049.   locale to an instantiator list), or a generic specifier object.
  15050.  
  15051. If SPEC is an alist, LOCALE must be omitted.  If SPEC is a
  15052.   specifier object, LOCALE can be a locale, a locale type, 'all,
  15053.   or nil; see `copy-specifier' for its semantics.  Otherwise LOCALE
  15054.   specifies the locale under which the specified instantiator(s)
  15055.   will be added, and defaults to 'global.
  15056.  
  15057. See `set-glyph-property' for more information.
  15058. Fmake-glyph
  15059. Create a new `glyph' object of type TYPE.
  15060.  
  15061. TYPE should be one of `buffer' (used for glyphs in an extent, the modeline,
  15062. the toolbar, or elsewhere in a buffer), `pointer' (used for the mouse-pointer),
  15063. or `icon' (used for a frame's icon), and defaults to `buffer'.
  15064.  
  15065. SPEC-LIST is used to initialize the glyph's image.  It is typically an
  15066. image instantiator (a string or a vector; see `image-specifier-p' for
  15067. a detailed description of the valid image instantiators), but can also
  15068. be a list of such instantiators (each one in turn is tried until an
  15069. image is successfully produced), a cons of a locale (frame, buffer, etc.)
  15070. and an instantiator, a list of such conses, or any other form accepted
  15071. by `canonicalize-spec-list'.  See `make-specifier' for more information
  15072. about specifiers.
  15073. Fbuffer-glyph-p
  15074. t if OBJECT is a glyph of type `buffer'.
  15075. Fpointer-glyph-p
  15076. t if OBJECT is a glyph of type `pointer'.
  15077. Ficon-glyph-p
  15078. t if OBJECT is a glyph of type `icon'.
  15079. Fmake-pointer-glyph
  15080. Create a new `pointer-glyph' object with the given specification list.
  15081.  
  15082. This is equivalent to calling `make-glyph' and specifying a type of
  15083. `pointer'.
  15084.  
  15085. SPEC-LIST is used to initialize the glyph's image.  It is typically an
  15086. image instantiator (a string or a vector; see `image-specifier-p' for
  15087. a detailed description of the valid image instantiators), but can also
  15088. be a list of such instantiators (each one in turn is tried until an
  15089. image is successfully produced), a cons of a locale (frame, buffer, etc.)
  15090. and an instantiator, a list of such conses, or any other form accepted
  15091. by `canonicalize-spec-list'.  See `make-specifier' for more information
  15092. about specifiers.
  15093.  
  15094. You can also create a glyph with an empty SPEC-LIST and add image
  15095. instantiators afterwards using `set-glyph-image'.
  15096. Fmake-icon-glyph
  15097. Create a new `icon-glyph' object with the given specification list.
  15098.  
  15099. This is equivalent to calling `make-glyph' and specifying a type of
  15100. `icon'.
  15101.  
  15102. SPEC-LIST is used to initialize the glyph's image.  It is typically an
  15103. image instantiator (a string or a vector; see `image-specifier-p' for
  15104. a detailed description of the valid image instantiators), but can also
  15105. be a list of such instantiators (each one in turn is tried until an
  15106. image is successfully produced), a cons of a locale (frame, buffer, etc.)
  15107. and an instantiator, a list of such conses, or any other form accepted
  15108. by `canonicalize-spec-list'.  See `make-specifier' for more information
  15109. about specifiers.
  15110.  
  15111. You can also create a glyph with an empty SPEC-LIST and add image
  15112. instantiators afterwards using `set-glyph-image'.
  15113. Fnothing-image-instance-p
  15114. t if OBJECT is an image instance of type `nothing'.
  15115. Ftext-image-instance-p
  15116. t if OBJECT is an image instance of type `text'.
  15117. Fmono-pixmap-image-instance-p
  15118. t if OBJECT is an image instance of type `mono-pixmap'.
  15119. Fcolor-pixmap-image-instance-p
  15120. t if OBJECT is an image instance of type `color-pixmap'.
  15121. Fpointer-image-instance-p
  15122. t if OBJECT is an image instance of type `pointer'.
  15123. Fsubwindow-image-instance-p
  15124. t if OBJECT is an image instance of type `subwindow'.
  15125. Subwindows are not implemented in this version of XEmacs.
  15126. Vtext-pointer-glyph
  15127. *The shape of the mouse-pointer when over text.
  15128. This is a glyph; use `set-glyph-image' to change it.
  15129. Vnontext-pointer-glyph
  15130. *The shape of the mouse-pointer when over a buffer, but not over text.
  15131. This is a glyph; use `set-glyph-image' to change it.
  15132. If unspecified in a particular domain, `text-pointer-glyph' is used.
  15133. Vmodeline-pointer-glyph
  15134. *The shape of the mouse-pointer when over the modeline.
  15135. This is a glyph; use `set-glyph-image' to change it.
  15136. If unspecified in a particular domain, `nontext-pointer-glyph' is used.
  15137. Vselection-pointer-glyph
  15138. *The shape of the mouse-pointer when over a selectable text region.
  15139. This is a glyph; use `set-glyph-image' to change it.
  15140. If unspecified in a particular domain, `text-pointer-glyph' is used.
  15141. Vbusy-pointer-glyph
  15142. *The shape of the mouse-pointer when XEmacs is busy.
  15143. This is a glyph; use `set-glyph-image' to change it.
  15144. If unspecified in a particular domain, the pointer is not changed
  15145. when XEmacs is busy.
  15146. Vtoolbar-pointer-glyph
  15147. *The shape of the mouse-pointer when over a toolbar.
  15148. This is a glyph; use `set-glyph-image' to change it.
  15149. If unspecified in a particular domain, `nontext-pointer-glyph' is used.
  15150. Fmake-font-specifier
  15151. Create a new `font' specifier object with the given specification list.
  15152. SPEC-LIST can be a list of specifications (each of which is a cons of a
  15153. locale and a list of instantiators), a single instantiator, or a list
  15154. of instantiators.  See `make-specifier' for more information about
  15155. specifiers.
  15156. Ffont-name
  15157. Return the name of the FONT in the specified DOMAIN, if any.
  15158. FONT should be a font specifier object and DOMAIN is normally a window
  15159. and defaults to the selected window if omitted.  This is equivalent
  15160. to using `specifier-instance' and applying `font-instance-name' to
  15161. the result.  See `make-specifier' for more information about specifiers.
  15162. Ffont-ascent
  15163. Return the ascent of the FONT in the specified DOMAIN, if any.
  15164. FONT should be a font specifier object and DOMAIN is normally a window
  15165. and defaults to the selected window if omitted.  This is equivalent
  15166. to using `specifier-instance' and applying `font-instance-ascent' to
  15167. the result.  See `make-specifier' for more information about specifiers.
  15168. Ffont-descent
  15169. Return the descent of the FONT in the specified DOMAIN, if any.
  15170. FONT should be a font specifier object and DOMAIN is normally a window
  15171. and defaults to the selected window if omitted.  This is equivalent
  15172. to using `specifier-instance' and applying `font-instance-descent' to
  15173. the result.  See `make-specifier' for more information about specifiers.
  15174. Ffont-width
  15175. Return the width of the FONT in the specified DOMAIN, if any.
  15176. FONT should be a font specifier object and DOMAIN is normally a window
  15177. and defaults to the selected window if omitted.  This is equivalent
  15178. to using `specifier-instance' and applying `font-instance-width' to
  15179. the result.  See `make-specifier' for more information about specifiers.
  15180. Ffont-height
  15181. Return the height of the FONT in the specified DOMAIN, if any.
  15182. FONT should be a font specifier object and DOMAIN is normally a window
  15183. and defaults to the selected window if omitted.  This is equivalent
  15184. to using `specifier-instance' and applying `font-instance-height' to
  15185. the result.  See `make-specifier' for more information about specifiers.
  15186. Ffont-proportional-p
  15187. Return whether FONT is proportional in the specified DOMAIN, if known.
  15188. FONT should be a font specifier object and DOMAIN is normally a window
  15189. and defaults to the selected window if omitted.  This is equivalent
  15190. to using `specifier-instance' and applying `font-instance-proportional-p' to
  15191. the result.  See `make-specifier' for more information about specifiers.
  15192. Ffont-properties
  15193. Return the properties of the FONT in the specified DOMAIN, if any.
  15194. FONT should be a font specifier object and DOMAIN is normally a window
  15195. and defaults to the selected window if omitted.  This is equivalent
  15196. to using `specifier-instance' and applying `font-instance-properties'
  15197. to the result.  See `make-specifier' for more information about specifiers.
  15198. Ffont-truename
  15199. Return the truename of the FONT in the specified DOMAIN, if any.
  15200. FONT should be a font specifier object and DOMAIN is normally a window
  15201. and defaults to the selected window if omitted.  This is equivalent
  15202. to using `specifier-instance' and applying `font-instance-truename'
  15203. to the result.  See `make-specifier' for more information about specifiers.
  15204. Ffont-instance-height
  15205. Return the height in pixels of FONT-INSTANCE.
  15206. The returned value is the maximum height for all characters in the font,
  15207. and is equivalent to the sum of the font instance's ascent and descent.
  15208. Fmake-color-specifier
  15209. Create a new `color' specifier object with the given specification list.
  15210. SPEC-LIST can be a list of specifications (each of which is a cons of a
  15211. locale and a list of instantiators), a single instantiator, or a list
  15212. of instantiators.  See `make-specifier' for a detailed description of
  15213. how specifiers work.
  15214. Fcolor-name
  15215. Return the name of the COLOR in the specified DOMAIN, if any.
  15216. COLOR should be a color specifier object and DOMAIN is normally a window
  15217. and defaults to the selected window if omitted.  This is equivalent
  15218. to using `specifier-instance' and applying `color-instance-name' to
  15219. the result.  See `make-specifier' for more information about specifiers.
  15220. Fcolor-rgb-components
  15221. Return the RGB components of the COLOR in the specified DOMAIN, if any.
  15222. COLOR should be a color specifier object and DOMAIN is normally a window
  15223. and defaults to the selected window if omitted.  This is equivalent
  15224. to using `specifier-instance' and applying `color-instance-rgb-components'
  15225. to the result.  See `make-specifier' for more information about specifiers.
  15226. Fmapcar-extents
  15227. Applies FUNCTION to all extents which overlap a region in BUFFER-OR-STRING.
  15228. The region is delimited by FROM and TO.  FUNCTION is called with
  15229. one argument, the extent.  A list of the values returned by FUNCTION
  15230. is returned.  An optional PREDICATE may be used to further limit the
  15231. extents over which FUNCTION is mapped.  The optional arguments FLAGS,
  15232. PROPERTY, and VALUE may also be used to control the extents passed to
  15233. PREDICATE or FUNCTION.  See also `map-extents'.
  15234. Fextent-list
  15235. Return a list of the extents in BUFFER-OR-STRING.
  15236. BUFFER-OR-STRING defaults to the current buffer if omitted.
  15237. FROM and TO can be used to limit the range over which extents are
  15238. returned; if omitted, all extents in the buffer or string are returned.
  15239.  
  15240. More specifically, if a range is specified using FROM and TO, only
  15241. extents that overlap the range (i.e. begin or end inside of the range)
  15242. are included in the list.  FROM and TO default to the beginning and
  15243. end of BUFFER-OR-STRING, respectively.
  15244.  
  15245. FLAGS controls how end cases are treated.  For a discussion of this,
  15246. and exactly what ``overlap'' means, see `map-extents'.
  15247.  
  15248. If you want to map a function over the extents in a buffer or string,
  15249. consider using `map-extents' or `mapcar-extents' instead.
  15250. Fextent-string
  15251. Return the string delimited by the bounds of EXTENT.
  15252. Fextent-descendants
  15253. Return a list of all descendants of EXTENT, including EXTENT.
  15254. This recursively applies `extent-children' to any children of
  15255. EXTENT, until no more children can be found.
  15256. Fset-extent-keymap
  15257. Set EXTENT's `keymap' property to KEYMAP.
  15258. Fextent-keymap
  15259. Return EXTENT's `keymap' property.
  15260. Fevent-console
  15261. Return the console that EVENT occurred on.
  15262. This will be nil for some types of events (e.g. eval events).
  15263. Fevent-device
  15264. Return the device that EVENT occurred on.
  15265. This will be nil for some types of events (e.g. keyboard and eval events).
  15266. Fevent-frame
  15267. Return the frame that EVENT occurred on.
  15268. This will be nil for some types of events (e.g. keyboard and eval events).
  15269. Fevent-buffer
  15270. Return the buffer of the window over which mouse event EVENT occurred.
  15271. Return nil unless both (mouse-event-p EVENT) and
  15272. (event-over-text-area-p EVENT) are non-nil.
  15273. Fkey-press-event-p
  15274. Return t if OBJECT is a key-press event.
  15275. Fbutton-press-event-p
  15276. Return t if OBJECT is a mouse button-press event.
  15277. Fbutton-release-event-p
  15278. Return t if OBJECT is a mouse button-release event.
  15279. Fbutton-event-p
  15280. Return t if OBJECT is a mouse button-press or button-release event.
  15281. Fmotion-event-p
  15282. Return t if OBJECT is a mouse motion event.
  15283. Fmouse-event-p
  15284. Return t if OBJECT is a mouse button-press, button-release or motion event.
  15285. Fprocess-event-p
  15286. Return t if OBJECT is a process-output event.
  15287. Ftimeout-event-p
  15288. Return t if OBJECT is a timeout event.
  15289. Feval-event-p
  15290. Return t if OBJECT is an eval event.
  15291. Fmisc-user-event-p
  15292. Return t if OBJECT is a misc-user event.
  15293. A misc-user event is a user event that is not a keypress or mouse click;
  15294. normally this means a menu selection or scrollbar action.
  15295. Fevent-over-glyph-p
  15296. Return t if OBJECT is a mouse event occurring over a glyph.
  15297. Mouse events are events of type button-press, button-release or motion.
  15298. Fkeyboard-translate
  15299. Translate character or keysym FROM to TO at a low level.
  15300. Multiple FROM-TO pairs may be specified.
  15301.  
  15302. See `keyboard-translate-table' for more information.
  15303. Fset-text-properties
  15304. You should NEVER use this function.  It is ideologically blasphemous.
  15305. It is provided only to ease porting of broken FSF Emacs programs.
  15306. Instead, use `remove-text-properties' to remove the specific properties
  15307. you do not want.
  15308.  
  15309. Completely replace properties of text from START to END.
  15310. The third argument PROPS is the new property list.
  15311. The optional fourth argument, BUFFER-OR-STRING,
  15312. is the string or buffer containing the text.
  15313. Fextent-properties-at
  15314. Returns the properties of the character at the given position
  15315. in OBJECT (a string or buffer) by merging the properties of overlapping
  15316. extents.  The returned value is a property list, some of which may be
  15317. shared with other structures.  You must not modify it.
  15318.  
  15319. If POSITION is at the end of OBJECT, the value is nil.
  15320.  
  15321. This returns all properties on all extents.
  15322. See also `text-properties-at'.
  15323. Ftext-properties-at
  15324. Returns the properties of the character at the given position
  15325. in OBJECT (a string or buffer) by merging the properties of overlapping
  15326. extents.  The returned value is a property list, some of which may be
  15327. shared with other structures.  You must not modify it.
  15328.  
  15329. If POSITION is at the end of OBJECT, the value is nil.
  15330.  
  15331. This returns only those properties added with `put-text-property'.
  15332. See also `extent-properties-at'.
  15333. Ftext-property-any
  15334. Check text from START to END to see if PROP is ever `eq' to VALUE.
  15335. If so, return the position of the first character whose PROP is `eq'
  15336. to VALUE.  Otherwise return nil.
  15337. The optional fifth argument, BUFFER-OR-STRING, is the buffer or string
  15338. containing the text and defaults to the current buffer.
  15339. Ftext-property-not-all
  15340. Check text from START to END to see if PROP is ever not `eq' to VALUE.
  15341. If so, return the position of the first character whose PROP is not
  15342. `eq' to VALUE.  Otherwise, return nil.
  15343. The optional fifth argument, BUFFER-OR-STRING, is the buffer or string
  15344. containing the text and defaults to the current buffer.
  15345. Fnext-property-change
  15346. Return the position of next property change.
  15347. Scans forward from POS in BUFFER-OR-STRING (defaults to the current buffer)
  15348.  until it finds a change in some text property, then returns the position of
  15349.  the change.
  15350. Returns nil if the properties remain unchanged all the way to the end.
  15351. If the value is non-nil, it is a position greater than POS, never equal.
  15352. If the optional third argument LIMIT is non-nil, don't search
  15353.  past position LIMIT; return LIMIT if nothing is found before LIMIT.
  15354. If two or more extents with conflicting non-nil values for a property overlap
  15355.  a particular character, it is undefined which value is considered to be
  15356.  the value of the property. (Note that this situation will not happen if
  15357.  you always use the text-property primitives.)
  15358. Fprevious-property-change
  15359. Return the position of previous property change.
  15360. Scans backward from POS in BUFFER-OR-STRING (defaults to the current buffer)
  15361.  until it finds a change in some text property, then returns the position of
  15362.  the change.
  15363. Returns nil if the properties remain unchanged all the way to the beginning.
  15364. If the value is non-nil, it is a position less than POS, never equal.
  15365. If the optional third argument LIMIT is non-nil, don't search back
  15366.  past position LIMIT; return LIMIT if nothing is found until LIMIT.
  15367. If two or more extents with conflicting non-nil values for a property overlap
  15368.  a particular character, it is undefined which value is considered to be
  15369.  the value of the property. (Note that this situation will not happen if
  15370.  you always use the text-property primitives.)
  15371. Ftext-property-bounds
  15372. Return the bounds of property PROP at POS.
  15373. This returns a cons (START . END) of the largest region of text containing
  15374. POS which has a non-nil value for PROP.  The return value is nil if POS
  15375. does not have a non-nil value for PROP.  OBJECT specifies the buffer
  15376. or string to search in.  Optional arg AT-FLAG controls what "at POS"
  15377. means, and has the same meaning as for `extent-at'.
  15378. Fnext-text-property-bounds
  15379. Return the COUNTth bounded property region of property PROP after POS.
  15380. If COUNT is less than zero, search backwards.  This returns a cons
  15381. (START . END) of the COUNTth maximal region of text that begins after POS
  15382. (starts before POS) and has a non-nil value for PROP.  If there aren't
  15383. that many regions, nil is returned.  OBJECT specifies the buffer or
  15384. string to search in.
  15385. Vshell-command-switch
  15386. Switch used to have the shell execute its command line argument.
  15387. Fstart-process-shell-command
  15388. Start a program in a subprocess.  Return the process object for it.
  15389. Args are NAME BUFFER COMMAND &rest COMMAND-ARGS.
  15390. NAME is name for process.  It is modified if necessary to make it unique.
  15391. BUFFER is the buffer or (buffer-name) to associate with the process.
  15392.  Process output goes at end of that buffer, unless you specify
  15393.  an output stream or filter function to handle the output.
  15394.  BUFFER may be also nil, meaning that this process is not associated
  15395.  with any buffer
  15396. Third arg is command name, the name of a shell command.
  15397. Remaining arguments are the arguments for the command.
  15398. Wildcards and redirection are handled as usual in the shell.
  15399. Fcall-process
  15400. Call PROGRAM synchronously in separate process.
  15401. The program's input comes from file INFILE (nil means `/dev/null').
  15402. Insert output in BUFFER before point; t means current buffer;
  15403.  nil for BUFFER means discard it; 0 means discard and don't wait.
  15404. BUFFER can also have the form (REAL-BUFFER STDERR-FILE); in that case,
  15405. REAL-BUFFER says what to do with standard output, as above,
  15406. while STDERR-FILE says what to do with standard error in the child.
  15407. STDERR-FILE may be nil (discard standard error output),
  15408. t (mix it with ordinary output), or a file name string.
  15409.  
  15410. Fourth arg DISPLAYP non-nil means redisplay buffer as output is inserted.
  15411. Remaining arguments are strings passed as command arguments to PROGRAM.
  15412.  
  15413. If BUFFER is 0, `call-process' returns immediately with value nil.
  15414. Otherwise it waits for PROGRAM to terminate and returns a numeric exit status
  15415.  or a signal description string.
  15416. If you quit, the process is killed with SIGINT, or SIGKILL if you
  15417.  quit again.
  15418. Fcall-process-region
  15419. Send text from START to END to a synchronous process running PROGRAM.
  15420. Delete the text if fourth arg DELETEP is non-nil.
  15421.  
  15422. Insert output in BUFFER before point; t means current buffer;
  15423.  nil for BUFFER means discard it; 0 means discard and don't wait.
  15424. BUFFER can also have the form (REAL-BUFFER STDERR-FILE); in that case,
  15425. REAL-BUFFER says what to do with standard output, as above,
  15426. while STDERR-FILE says what to do with standard error in the child.
  15427. STDERR-FILE may be nil (discard standard error output),
  15428. t (mix it with ordinary output), or a file name string.
  15429.  
  15430. Sixth arg DISPLAYP non-nil means redisplay buffer as output is inserted.
  15431. Remaining args are passed to PROGRAM at startup as command args.
  15432.  
  15433. If BUFFER is 0, returns immediately with value nil.
  15434. Otherwise waits for PROGRAM to terminate
  15435. and returns a numeric exit status or a signal description string.
  15436. If you quit, the process is first killed with SIGINT, then with SIGKILL if
  15437. you quit again before the process exits.
  15438. Fshell-command
  15439. Execute string COMMAND in inferior shell; display output, if any.
  15440.  
  15441. If COMMAND ends in ampersand, execute it asynchronously.
  15442. The output appears in the buffer `*Async Shell Command*'.
  15443. That buffer is in shell mode.
  15444.  
  15445. Otherwise, COMMAND is executed synchronously.  The output appears in the
  15446. buffer `*Shell Command Output*'.
  15447. If the output is one line, it is displayed in the echo area *as well*,
  15448. but it is nonetheless available in buffer `*Shell Command Output*',
  15449. even though that buffer is not automatically displayed.
  15450. If there is no output, or if output is inserted in the current buffer,
  15451. then `*Shell Command Output*' is deleted.
  15452.  
  15453. The optional second argument OUTPUT-BUFFER, if non-nil,
  15454. says to put the output in some other buffer.
  15455. If OUTPUT-BUFFER is a buffer or buffer name, put the output there.
  15456. If OUTPUT-BUFFER is not a buffer and not nil,
  15457. insert output in current buffer.  (This cannot be done asynchronously.)
  15458. In either case, the output is inserted after point (leaving mark after it).
  15459. Fshell-command-on-region
  15460. Execute string COMMAND in inferior shell with region as input.
  15461. Normally display output (if any) in temp buffer `*Shell Command Output*';
  15462. Prefix arg means replace the region with it.
  15463.  
  15464. The noninteractive arguments are START, END, COMMAND, OUTPUT-BUFFER, REPLACE.
  15465. If REPLACE is non-nil, that means insert the output
  15466. in place of text from START to END, putting point and mark around it.
  15467.  
  15468. If the output is one line, it is displayed in the echo area,
  15469. but it is nonetheless available in buffer `*Shell Command Output*'
  15470. even though that buffer is not automatically displayed.
  15471. If there is no output, or if output is inserted in the current buffer,
  15472. then `*Shell Command Output*' is deleted.
  15473.  
  15474. If the optional fourth argument OUTPUT-BUFFER is non-nil,
  15475. that says to put the output in some other buffer.
  15476. If OUTPUT-BUFFER is a buffer or buffer name, put the output there.
  15477. If OUTPUT-BUFFER is not a buffer and not nil,
  15478. insert output in the current buffer.
  15479. In either case, the output is inserted after point (leaving mark after it).
  15480. Fstart-process
  15481. Start a program in a subprocess.  Return the process object for it.
  15482. Args are NAME BUFFER PROGRAM &rest PROGRAM-ARGS
  15483. NAME is name for process.  It is modified if necessary to make it unique.
  15484. BUFFER is the buffer or (buffer-name) to associate with the process.
  15485.  Process output goes at end of that buffer, unless you specify
  15486.  an output stream or filter function to handle the output.
  15487.  BUFFER may be also nil, meaning that this process is not associated
  15488.  with any buffer
  15489. Third arg is program file name.  It is searched for as in the shell.
  15490. Remaining arguments are strings to give program as arguments.
  15491. INCODE and OUTCODE specify the coding-system objects used in input/output
  15492.  from/to the process.
  15493. Fopen-network-stream
  15494. Open a TCP connection for a service to a host.
  15495. Returns a subprocess-object to represent the connection.
  15496. Input and output work as for subprocesses; `delete-process' closes it.
  15497. Args are NAME BUFFER HOST SERVICE.
  15498. NAME is name for process.  It is modified if necessary to make it unique.
  15499. BUFFER is the buffer (or buffer-name) to associate with the process.
  15500.  Process output goes at end of that buffer, unless you specify
  15501.  an output stream or filter function to handle the output.
  15502.  BUFFER may be also nil, meaning that this process is not associated
  15503.  with any buffer
  15504. Third arg is name of the host to connect to, or its IP address.
  15505. Fourth arg SERVICE is name of the service desired, or an integer
  15506.  specifying a port number to connect to.
  15507. Fshell-quote-argument
  15508. Quote an argument for passing as argument to an inferior shell.
  15509. Fexec-to-string
  15510. Execute COMMAND as an external process and return the output of that
  15511. process as a string
  15512. Fget-other-frame
  15513. Return some frame other than the current frame, creating one if necessary.
  15514. Fnext-multiframe-window
  15515. Select the next window, regardless of which frame it is on.
  15516. Fprevious-multiframe-window
  15517. Select the previous window, regardless of which frame it is on.
  15518. Fmake-frame-on-device
  15519. Create a frame of type TYPE on CONNECTION.
  15520. TYPE should be a symbol naming the device type, i.e. one of
  15521.  
  15522. x    An X display.  CONNECTION should be a standard display string
  15523.     such as "unix:0", or nil for the display specified on the
  15524.     command line or in the DISPLAY environment variable.  Only if
  15525.     support for X was compiled into    XEmacs.
  15526. tty    A standard TTY connection or terminal.  CONNECTION should be
  15527.     a TTY device name such as "/dev/ttyp2" (as determined by
  15528.     the Unix command `tty') or nil for XEmacs' standard input
  15529.     and output (usually the TTY in which XEmacs started).  Only
  15530.     if support for TTY's was compiled into XEmacs.
  15531. ns    A connection to a machine running the NeXTstep windowing
  15532.     system.  Not currently implemented.
  15533. win32    A connection to a machine running Microsoft Windows NT or
  15534.     Windows 95.  Not currently implemented.
  15535. pc    A direct-write MS-DOS frame.  Not currently implemented.
  15536.  
  15537. PROPS should be a plist of properties, as in the call to `make-frame'.
  15538.  
  15539. If a connection to CONNECTION already exists, it is reused; otherwise,
  15540. a new connection is opened.
  15541. Ffiltered-frame-list
  15542. Return a list of all live frames which satisfy PREDICATE.
  15543. If optional second arg DEVICE is non-nil, restrict the frames
  15544.  returned to that device.
  15545. Fminibuffer-frame-list
  15546. Return a list of all frames with their own minibuffers.
  15547. If optional second arg DEVICE is non-nil, restrict the frames
  15548.  returned to that device.
  15549. Fframe-minibuffer-only-p
  15550. Return non-nil if FRAME is a minibuffer-only frame.
  15551. Fframe-remove-geometry-props
  15552. Return the property list PLIST, but with geometry specs removed.
  15553. This deletes all bindings in PLIST for `top', `left', `width',
  15554. `height', `user-size' and `user-position' properties.
  15555. Emacs uses this to avoid overriding explicit moves and resizings from
  15556. the user during startup.
  15557. Fother-frame
  15558. Select the ARG'th different visible frame, and raise it.
  15559. All frames are arranged in a cyclic order.
  15560. This command selects the frame ARG steps away in that order.
  15561. A negative ARG moves in the opposite order.
  15562. Fframe-list
  15563. Return a list of all frames on all devices/consoles.
  15564. Fframe-type
  15565. Return the type of the specified frame (e.g. `x' or `tty').
  15566. This is equivalent to the type of the frame's device.
  15567. Value is `tty' for a tty frame (a character-only terminal),
  15568. `x' for a frame that is an X window,
  15569. `ns' for a frame that is a NeXTstep window (not yet implemented),
  15570. `win32' for a frame that is a Windows or Windows NT window (not yet
  15571.   implemented),
  15572. `pc' for a frame that is a direct-write MS-DOS frame (not yet implemented),
  15573. `stream' for a stream frame (which acts like a stdio stream), and
  15574. `dead' for a deleted frame.
  15575. Fdevice-or-frame-p
  15576. Return non-nil if OBJECT is a device or frame.
  15577. Fdevice-or-frame-type
  15578. Return the type (e.g. `x' or `tty') of DEVICE-OR-FRAME.
  15579. DEVICE-OR-FRAME should be a device or a frame object.  See `device-type'
  15580. for a description of the possible types.
  15581. Ffw-frame
  15582. Given a frame or window, return the associated frame.
  15583. Return nil otherwise.
  15584. Fcurrent-frame-configuration
  15585. Return a list describing the positions and states of all frames.
  15586. Its car is `frame-configuration'.
  15587. Each element of the cdr is a list of the form (FRAME PLIST WINDOW-CONFIG),
  15588. where
  15589.   FRAME is a frame object,
  15590.   PLIST is a property list specifying some of FRAME's properties, and
  15591.   WINDOW-CONFIG is a window configuration object for FRAME.
  15592. Fset-frame-configuration
  15593. Restore the frames to the state described by CONFIGURATION.
  15594. Each frame listed in CONFIGURATION has its position, size, window
  15595. configuration, and other properties set as specified in CONFIGURATION.
  15596. Ordinarily, this function deletes all existing frames not
  15597. listed in CONFIGURATION.  But if optional second argument NODELETE
  15598. is given and non-nil, the unwanted frames are iconified instead.
  15599. Fframe-configuration-p
  15600. Return non-nil if OBJECT seems to be a frame configuration.
  15601. Any list whose car is `frame-configuration' is assumed to be a frame
  15602. configuration.
  15603. Ficonify-emacs
  15604. Replace every non-iconified FRAME with a *single* icon.
  15605. Iconified frames are left alone.  When XEmacs is in this
  15606. globally-iconified state, de-iconifying any emacs icon will uniconify
  15607. all frames that were visible, and iconify all frames that were not.
  15608. Fsuspend-or-iconify-emacs
  15609. Calls iconify-emacs if frame is an X frame, otherwise calls suspend-emacs
  15610. Fsuspend-emacs-or-iconify-frame
  15611. Iconify current frame if it is an X frame, otherwise suspend Emacs.
  15612. Fdefault-select-frame-hook
  15613. Implements the `auto-raise-frame' variable.
  15614. For use as the value of `select-frame-hook'.
  15615. Fdefault-deselect-frame-hook
  15616. Implements the `auto-lower-frame' variable.
  15617. For use as the value of `deselect-frame-hook'.
  15618. Fdefault-drag-and-drop-functions
  15619. Implements the `drag-and-drop-functions' variable.
  15620. For use as the value of `drag-and-drop-functions'.
  15621. A file is popped up in a new buffer, some data without
  15622. is inserted at point.
  15623. Fcde-start-drag
  15624. Implements the CDE drag operation.
  15625. Calls the internal function cde-start-drag-internal to do the actual work.
  15626. Foffix-start-drag
  15627. Implements the OffiX drag operation.
  15628. Calls the internal function offix-start-drag-internal to do the actual work.
  15629. If type is not given, DndText is assumed.
  15630. Foffix-start-drag-region
  15631. Implements the OffiX drag operation for a region.
  15632. Calls the internal function offix-start-drag-internal to do the actual work.
  15633. This always assumes DndText as type.
  15634. Vget-frame-for-buffer-default-frame-name
  15635. The default frame to select; see doc of `get-frame-for-buffer'.
  15636. Fget-frame-for-buffer-noselect
  15637. Return a frame in which to display BUFFER.
  15638. This is a subroutine of `get-frame-for-buffer' (which see).
  15639. Fget-frame-for-buffer
  15640. Select and return a frame in which to display BUFFER.
  15641. Normally, the buffer will simply be displayed in the current frame.
  15642. But if the symbol naming the major-mode of the buffer has a 'frame-name
  15643. property (which should be a symbol), then the buffer will be displayed in
  15644. a frame of that name.  If there is no frame of that name, then one is
  15645. created.  
  15646.  
  15647. If the major-mode doesn't have a 'frame-name property, then the frame
  15648. named by `get-frame-for-buffer-default-frame-name' will be used.  If
  15649. that is nil (the default) then the currently selected frame will used.
  15650.  
  15651. If the frame-name symbol has an 'instance-limit property (an integer)
  15652. then each time a buffer of the mode in question is displayed, a new frame
  15653. with that name will be created, until there are `instance-limit' of them.
  15654. If instance-limit is 0, then a new frame will be created each time.
  15655.  
  15656. If a buffer is already displayed in a frame, then `instance-limit' is 
  15657. ignored, and that frame is used.
  15658.  
  15659. If the frame-name symbol has a 'frame-defaults property, then that is
  15660. prepended to the `default-frame-plist' when creating a frame for the
  15661. first time.
  15662.  
  15663. This function may be used as the value of `pre-display-buffer-function', 
  15664. to cause the display-buffer function and its callers to exhibit the above
  15665. behavior.
  15666. Fframes-of-buffer
  15667. Return list of frames that BUFFER is currently being displayed on.
  15668. If the buffer is being displayed on the currently selected frame, that frame
  15669. is first in the list.  VISIBLE-ONLY will only list non-iconified frames.
  15670. Fshow-temp-buffer-in-current-frame
  15671. For use as the value of temp-buffer-show-function:
  15672. always displays the buffer in the current frame, regardless of the behavior
  15673. that would otherwise be introduced by the `pre-display-buffer-function', which
  15674. is normally set to `get-frame-for-buffer' (which see).
  15675. Fdelete-other-frames
  15676. Delete all but FRAME (or the selected frame).
  15677. Fframe-highest-window
  15678. Return the highest window on FRAME which is at POSITION.
  15679. If omitted, FRAME defaults to the currently selected frame.
  15680. POSITION is used to distinguish between multiple windows that abut
  15681.  the top of the frame: 0 means the leftmost window abutting the
  15682.  top of the frame, 1 the next-leftmost, etc.  POSITION can also
  15683.  be less than zero: -1 means the rightmost window abutting the
  15684.  top of the frame, -2 the next-rightmost, etc.
  15685. If omitted, POSITION defaults to 0, i.e. the leftmost highest window.
  15686. If there is no window at the given POSITION, return nil.
  15687. Fframe-lowest-window
  15688. Return the lowest window on FRAME which is at POSITION.
  15689. If omitted, FRAME defaults to the currently selected frame.
  15690. POSITION is used to distinguish between multiple windows that abut
  15691.  the bottom of the frame: 0 means the leftmost window abutting the
  15692.  bottom of the frame, 1 the next-leftmost, etc.  POSITION can also
  15693.  be less than zero: -1 means the rightmost window abutting the
  15694.  bottom of the frame, -2 the next-rightmost, etc.
  15695. If omitted, POSITION defaults to 0, i.e. the leftmost lowest window.
  15696. If there is no window at the given POSITION, return nil.
  15697. Fframe-leftmost-window
  15698. Return the leftmost window on FRAME which is at POSITION.
  15699. If omitted, FRAME defaults to the currently selected frame.
  15700. POSITION is used to distinguish between multiple windows that abut
  15701.  the left edge of the frame: 0 means the highest window abutting the
  15702.  left edge of the frame, 1 the next-highest, etc.  POSITION can also
  15703.  be less than zero: -1 means the lowest window abutting the
  15704.  left edge of the frame, -2 the next-lowest, etc.
  15705. If omitted, POSITION defaults to 0, i.e. the highest leftmost window.
  15706. If there is no window at the given POSITION, return nil.
  15707. Fframe-rightmost-window
  15708. Return the rightmost window on FRAME which is at POSITION.
  15709. If omitted, FRAME defaults to the currently selected frame.
  15710. POSITION is used to distinguish between multiple windows that abut
  15711.  the right edge of the frame: 0 means the highest window abutting the
  15712.  right edge of the frame, 1 the next-highest, etc.  POSITION can also
  15713.  be less than zero: -1 means the lowest window abutting the
  15714.  right edge of the frame, -2 the next-lowest, etc.
  15715. If omitted, POSITION defaults to 0, i.e. the highest rightmost window.
  15716. If there is no window at the given POSITION, return nil.
  15717. Fset-frame-property
  15718. Set property PROP of FRAME to VAL.  See `set-frame-properties'.
  15719. Fframe-height
  15720. Return number of lines available for display on FRAME.
  15721. Fframe-width
  15722. Return number of columns available for display on FRAME.
  15723. Fmap-y-or-n-p
  15724. Ask a series of boolean questions.
  15725. Takes args PROMPTER ACTOR LIST, and optional args HELP and ACTION-ALIST.
  15726.  
  15727. LIST is a list of objects, or a function of no arguments to return the next
  15728. object or nil.
  15729.  
  15730. If PROMPTER is a string, the prompt is (format PROMPTER OBJECT).  If not
  15731. a string, PROMPTER is a function of one arg (an object from LIST), which
  15732. returns a string to be used as the prompt for that object.  If the return
  15733. value is not a string, it may be nil to ignore the object or non-nil to act
  15734. on the object without asking the user.
  15735.  
  15736. ACTOR is a function of one arg (an object from LIST),
  15737. which gets called with each object that the user answers `yes' for.
  15738.  
  15739. If HELP is given, it is a list (OBJECT OBJECTS ACTION),
  15740. where OBJECT is a string giving the singular noun for an elt of LIST;
  15741. OBJECTS is the plural noun for elts of LIST, and ACTION is a transitive
  15742. verb describing ACTOR.  The default is ("object" "objects" "act on").
  15743.  
  15744. At the prompts, the user may enter y, Y, or SPC to act on that object;
  15745. n, N, or DEL to skip that object; ! to act on all following objects;
  15746. ESC or q to exit (skip all following objects); . (period) to act on the
  15747. current object and then exit; or \[help-command] to get help.
  15748.  
  15749. If ACTION-ALIST is given, it is an alist (KEY FUNCTION HELP) of extra keys
  15750. that will be accepted.  KEY is a character; FUNCTION is a function of one
  15751. arg (an object from LIST); HELP is a string.  When the user hits KEY,
  15752. FUNCTION is called.  If it returns non-nil, the object is considered
  15753. "acted upon", and the next object from LIST is processed.  If it returns
  15754. nil, the prompt is repeated for the same object.
  15755.  
  15756. Final optional argument NO-CURSOR-IN-ECHO-AREA non-nil says not to set
  15757. `cursor-in-echo-area' while prompting.
  15758.  
  15759. This function uses `query-replace-map' to define the standard responses,
  15760. but not all of the responses which `query-replace' understands
  15761. are meaningful here.
  15762.  
  15763. Returns the number of actions taken.
  15764. Fnewline
  15765. Insert a newline, and move to left margin of the new line if it's blank.
  15766. The newline is marked with the text-property `hard'.
  15767. With arg, insert that many newlines.
  15768. In Auto Fill mode, if no numeric arg, break the preceding line if it's long.
  15769. Fopen-line
  15770. Insert a newline and leave point before it.
  15771. If there is a fill prefix and/or a left-margin, insert them on the new line
  15772. if the line would have been blank.
  15773. With arg N, insert N newlines.
  15774. Fsplit-line
  15775. Split current line, moving portion beyond point vertically down.
  15776. Fquoted-insert
  15777. Read next input character and insert it.
  15778. This is useful for inserting control characters.
  15779. You may also type up to 3 octal digits, to insert a character with that code.
  15780.  
  15781. In overwrite mode, this function inserts the character anyway, and
  15782. does not handle octal digits specially.  This means that if you use
  15783. overwrite as your normal editing mode, you can use this function to
  15784. insert characters when necessary.
  15785.  
  15786. In binary overwrite mode, this function does overwrite, and octal
  15787. digits are interpreted as a character code.  This is supposed to make
  15788. this function useful in editing binary files.
  15789. Fdelete-indentation
  15790. Join this line to previous and fix up whitespace at join.
  15791. If there is a fill prefix, delete it from the beginning of this line.
  15792. With argument, join this line to following line.
  15793. Ffixup-whitespace
  15794. Fixup white space between objects around point.
  15795. Leave one space or none, according to the context.
  15796. Fdelete-horizontal-space
  15797. Delete all spaces and tabs around point.
  15798. Fjust-one-space
  15799. Delete all spaces and tabs around point, leaving one space.
  15800. Fdelete-blank-lines
  15801. On blank line, delete all surrounding blank lines, leaving just one.
  15802. On isolated blank line, delete that one.
  15803. On nonblank line, delete any immediately following blank lines.
  15804. Fback-to-indentation
  15805. Move point to the first non-whitespace character on this line.
  15806. Fnewline-and-indent
  15807. Insert a newline, then indent according to major mode.
  15808. Indentation is done using the value of `indent-line-function'.
  15809. In programming language modes, this is the same as TAB.
  15810. In some text modes, where TAB inserts a tab, this command indents to the
  15811. column specified by the function `current-left-margin'.
  15812. Freindent-then-newline-and-indent
  15813. Reindent current line, insert newline, then indent the new line.
  15814. Indentation of both lines is done according to the current major mode,
  15815. which means calling the current value of `indent-line-function'.
  15816. In programming language modes, this is the same as TAB.
  15817. In some text modes, where TAB inserts a tab, this indents to the
  15818. column specified by the function `current-left-margin'.
  15819. Fbackward-delete-char-untabify
  15820. Delete characters backward, changing tabs into spaces.
  15821. Delete ARG chars, and kill (save in kill ring) if KILLP is non-nil.
  15822. Interactively, ARG is the prefix arg (default 1)
  15823. and KILLP is t if a prefix arg was specified.
  15824. Fbackward-or-forward-delete-char
  15825. Delete either one character backwards or one character forwards.
  15826. Controlled by the state of `delete-key-deletes-forward' and whether the
  15827. BackSpace keysym even exists on your keyboard.  If you don't have a
  15828. BackSpace keysym, the delete key should always delete one character
  15829. backwards.
  15830. Fbackward-or-forward-kill-word
  15831. Delete either one word backwards or one word forwards.
  15832. Controlled by the state of `delete-key-deletes-forward' and whether the
  15833. BackSpace keysym even exists on your keyboard.  If you don't have a
  15834. BackSpace keysym, the delete key should always delete one character
  15835. backwards.
  15836. Fbackward-or-forward-kill-sentence
  15837. Delete either one sentence backwards or one sentence forwards.
  15838. Controlled by the state of `delete-key-deletes-forward' and whether the
  15839. BackSpace keysym even exists on your keyboard.  If you don't have a
  15840. BackSpace keysym, the delete key should always delete one character
  15841. backwards.
  15842. Fbackward-or-forward-kill-sexp
  15843. Delete either one sexpr backwards or one sexpr forwards.
  15844. Controlled by the state of `delete-key-deletes-forward' and whether the
  15845. BackSpace keysym even exists on your keyboard.  If you don't have a
  15846. BackSpace keysym, the delete key should always delete one character
  15847. backwards.
  15848. Fzap-to-char
  15849. Kill up to and including ARG'th occurrence of CHAR.
  15850. Goes backward if ARG is negative; error if CHAR not found.
  15851. Fbeginning-of-buffer
  15852. Move point to the beginning of the buffer; leave mark at previous position.
  15853. With arg N, put point N/10 of the way from the beginning.
  15854.  
  15855. If the buffer is narrowed, this command uses the beginning and size
  15856. of the accessible part of the buffer.
  15857.  
  15858. Don't use this command in Lisp programs!
  15859. (goto-char (point-min)) is faster and avoids clobbering the mark.
  15860. Fend-of-buffer
  15861. Move point to the end of the buffer; leave mark at previous position.
  15862. With arg N, put point N/10 of the way from the end.
  15863.  
  15864. If the buffer is narrowed, this command uses the beginning and size
  15865. of the accessible part of the buffer.
  15866.  
  15867. Don't use this command in Lisp programs!
  15868. (goto-char (point-max)) is faster and avoids clobbering the mark.
  15869. Fmark-beginning-of-buffer
  15870. Push a mark at the beginning of the buffer; leave point where it is.
  15871. With arg N, push mark N/10 of the way from the true beginning.
  15872. Fmark-end-of-buffer
  15873. Push a mark at the end of the buffer; leave point where it is.
  15874. With arg N, push mark N/10 of the way from the true end.
  15875. Fmark-whole-buffer
  15876. Put point at beginning and mark at end of buffer.
  15877. You probably should not use this function in Lisp programs;
  15878. it is usually a mistake for a Lisp function to use any subroutine
  15879. that uses or sets the mark.
  15880. Feval-current-buffer
  15881. Evaluate the current buffer as Lisp code.
  15882. Programs can pass argument PRINTFLAG which controls printing of output:
  15883. nil means discard it; anything else is stream for print.
  15884. Fcount-lines-region
  15885. Print number of lines and characters in the region.
  15886. Fcount-lines-buffer
  15887. Print number of lines and characters in the specified buffer.
  15888. Fwhat-line
  15889. Print the current buffer line number and narrowed line number of point.
  15890. Fcount-lines
  15891. Return number of lines between START and END.
  15892. This is usually the number of newlines between them,
  15893. but can be one more if START is not equal to END
  15894. and the greater of them is not at the start of a line.
  15895. Fwhat-cursor-position
  15896. Print info on cursor position (on screen and within buffer).
  15897. Ffundamental-mode
  15898. Major mode not specialized for anything in particular.
  15899. Other major modes are defined by comparison with this one.
  15900. Feval-expression
  15901. Evaluate EXPRESSION and print value in minibuffer.
  15902. Value is also consed on to front of the variable `values'.
  15903. Fedit-and-eval-command
  15904. Prompting with PROMPT, let user edit COMMAND and eval result.
  15905. COMMAND is a Lisp expression.  Let user edit that expression in
  15906. the minibuffer, then read and evaluate the result.
  15907. Frepeat-complex-command
  15908. Edit and re-evaluate last complex command, or ARGth from last.
  15909. A complex command is one which used the minibuffer.
  15910. The command is placed in the minibuffer as a Lisp form for editing.
  15911. The result is executed, repeating the command as changed.
  15912. If the command has been changed or is not the most recent previous command
  15913. it is added to the front of the command history.
  15914. You can use the minibuffer history commands \<minibuffer-local-map>\[next-history-element] and \[previous-history-element]
  15915. to get different commands to edit and resubmit.
  15916. Fgoto-line
  15917. Goto line ARG, counting from line 1 at beginning of buffer.
  15918. Fundo
  15919. Undo some previous changes.
  15920. Repeat this command to undo more changes.
  15921. A numeric argument serves as a repeat count.
  15922. Vpending-undo-list
  15923. Within a run of consecutive undo commands, list remaining to be undone.
  15924. Fundo-start
  15925. Set `pending-undo-list' to the front of the undo list.
  15926. The next call to `undo-more' will undo the most recently made change.
  15927. Fundo-more
  15928. Undo back N undo-boundaries beyond what was already undone recently.
  15929. Call `undo-start' to get ready to undo recent changes,
  15930. then call `undo-more' one or more times to undo them.
  15931. Fcall-with-transparent-undo
  15932. Apply FN to ARGS, and then undo all changes made by FN to the current
  15933. buffer.  The undo records are processed even if FN returns non-locally.
  15934. There is no trace of the changes made by FN in the buffer's undo history.
  15935.  
  15936. You can use this in a write-file-hooks function with continue-save-buffer
  15937. to make the contents of a disk file differ from its in-memory buffer.
  15938. Vuniversal-argument-map
  15939. Keymap used while processing \[universal-argument].
  15940. Vuniversal-argument-num-events
  15941. Number of argument-specifying events read by `universal-argument'.
  15942. `universal-argument-other-key' uses this to discard those events
  15943. from (this-command-keys), and reread only the final command.
  15944. Funiversal-argument
  15945. Begin a numeric argument for the following command.
  15946. Digits or minus sign following \[universal-argument] make up the numeric argument.
  15947. \[universal-argument] following the digits or minus sign ends the argument.
  15948. \[universal-argument] without digits or minus sign provides 4 as argument.
  15949. Repeating \[universal-argument] without digits or minus sign
  15950.  multiplies the argument by 4 each time.
  15951. Fnegative-argument
  15952. Begin a negative numeric argument for the next command.
  15953. \[universal-argument] following digits or minus sign ends the argument.
  15954. Fdigit-argument
  15955. Part of the numeric argument for the next command.
  15956. \[universal-argument] following digits or minus sign ends the argument.
  15957. Fforward-to-indentation
  15958. Move forward ARG lines and position at first nonblank character.
  15959. Fbackward-to-indentation
  15960. Move backward ARG lines and position at first nonblank character.
  15961. Fkill-line
  15962. Kill the rest of the current line; if no nonblanks there, kill thru newline.
  15963. With prefix argument, kill that many lines from point.
  15964. Negative arguments kill lines backward.
  15965.  
  15966. When calling from a program, nil means "no arg",
  15967. a number counts as a prefix arg.
  15968.  
  15969. If `kill-whole-line' is non-nil, then kill the whole line
  15970. when given no argument at the beginning of a line.
  15971. Fbackward-kill-line
  15972. Kill back to the beginning of the line.
  15973. Vinterprogram-cut-function
  15974. Function to call to make a killed region available to other programs.
  15975.  
  15976. Most window systems provide some sort of facility for cutting and
  15977. pasting text between the windows of different programs.
  15978. This variable holds a function that Emacs calls whenever text
  15979. is put in the kill ring, to make the new kill available to other
  15980. programs.
  15981.  
  15982. The function takes one or two arguments.
  15983. The first argument, TEXT, is a string containing
  15984. the text which should be made available.
  15985. The second, PUSH, if non-nil means this is a "new" kill;
  15986. nil means appending to an "old" kill.
  15987. Vinterprogram-paste-function
  15988. Function to call to get text cut from other programs.
  15989.  
  15990. Most window systems provide some sort of facility for cutting and
  15991. pasting text between the windows of different programs.
  15992. This variable holds a function that Emacs calls to obtain
  15993. text that other programs have provided for pasting.
  15994.  
  15995. The function should be called with no arguments.  If the function
  15996. returns nil, then no other program has provided such text, and the top
  15997. of the Emacs kill ring should be used.  If the function returns a
  15998. string, that string should be put in the kill ring as the latest kill.
  15999.  
  16000. Note that the function should return a string only if a program other
  16001. than Emacs has provided a string for pasting; if Emacs provided the
  16002. most recent string, the function should return nil.  If it is
  16003. difficult to tell whether Emacs or some other program provided the
  16004. current string, it is probably good enough to return nil if the string
  16005. is equal (according to `string=') to the last text Emacs provided.
  16006. Vkill-ring
  16007. List of killed text sequences.
  16008. Since the kill ring is supposed to interact nicely with cut-and-paste
  16009. facilities offered by window systems, use of this variable should
  16010. interact nicely with `interprogram-cut-function' and
  16011. `interprogram-paste-function'.  The functions `kill-new',
  16012. `kill-append', and `current-kill' are supposed to implement this
  16013. interaction; you may want to use them instead of manipulating the kill
  16014. ring directly.
  16015. Vkill-ring-yank-pointer
  16016. The tail of the kill ring whose car is the last thing yanked.
  16017. Fkill-new
  16018. Make STRING the latest kill in the kill ring.
  16019. Set the kill-ring-yank pointer to point to it.
  16020. Run `kill-hooks'.
  16021. Optional second argument REPLACE non-nil means that STRING will replace
  16022. the front of the kill ring, rather than being added to the list.
  16023. Fkill-append
  16024. Append STRING to the end of the latest kill in the kill ring.
  16025. If BEFORE-P is non-nil, prepend STRING to the kill.
  16026. Run `kill-hooks'.
  16027. Fcurrent-kill
  16028. Rotate the yanking point by N places, and then return that kill.
  16029. If N is zero, `interprogram-paste-function' is set, and calling it
  16030. returns a string, then that string is added to the front of the
  16031. kill ring and returned as the latest kill.
  16032. If optional arg DO-NOT-MOVE is non-nil, then don't actually move the 
  16033. yanking point; just return the Nth kill forward.
  16034. Fkill-region
  16035. Kill between point and mark.
  16036. The text is deleted but saved in the kill ring.
  16037. The command \[yank] can retrieve it from there.
  16038. (If you want to kill and then yank immediately, use \[copy-region-as-kill].)
  16039.  
  16040. This is the primitive for programs to kill text (as opposed to deleting it).
  16041. Supply two arguments, character numbers indicating the stretch of text
  16042.  to be killed.
  16043. Any command that calls this function is a "kill command".
  16044. If the previous command was also a kill command,
  16045. the text killed this time appends to the text killed last time
  16046. to make one entry in the kill ring.
  16047. Fcopy-region-as-kill
  16048. Save the region as if killed, but don't kill it.
  16049. Run `kill-hooks'.
  16050. Fkill-ring-save
  16051. Save the region as if killed, but don't kill it.
  16052. This command is similar to `copy-region-as-kill', except that it gives
  16053. visual feedback indicating the extent of the region being copied.
  16054. Fappend-next-kill
  16055. Cause following command, if it kills, to append to previous kill.
  16056. Fyank-pop
  16057. Replace just-yanked stretch of killed text with a different stretch.
  16058. This command is allowed only immediately after a `yank' or a `yank-pop'.
  16059. At such a time, the region contains a stretch of reinserted
  16060. previously-killed text.  `yank-pop' deletes that text and inserts in its
  16061. place a different stretch of killed text.
  16062.  
  16063. With no argument, the previous kill is inserted.
  16064. With argument N, insert the Nth previous kill.
  16065. If N is negative, this is a more recent kill.
  16066.  
  16067. The sequence of kills wraps around, so that after the oldest one
  16068. comes the newest one.
  16069. Fyank
  16070. Reinsert the last stretch of killed text.
  16071. More precisely, reinsert the stretch of killed text most recently
  16072. killed OR yanked.  Put point at end, and set mark at beginning.
  16073. With just C-u as argument, same but put point at beginning (and mark at end).
  16074. With argument N, reinsert the Nth most recently killed stretch of killed
  16075. text.
  16076. See also the command \[yank-pop].
  16077. Frotate-yank-pointer
  16078. Rotate the yanking point in the kill ring.
  16079. With argument, rotate that many kills forward (or backward, if negative).
  16080. Finsert-buffer
  16081. Insert after point the contents of BUFFER.
  16082. Puts mark after the inserted text.
  16083. BUFFER may be a buffer or a buffer name.
  16084. Fappend-to-buffer
  16085. Append to specified buffer the text of the region.
  16086. It is inserted into that buffer before its point.
  16087.  
  16088. When calling from a program, give three arguments:
  16089. BUFFER (or buffer name), START and END.
  16090. START and END specify the portion of the current buffer to be copied.
  16091. Fprepend-to-buffer
  16092. Prepend to specified buffer the text of the region.
  16093. It is inserted into that buffer after its point.
  16094.  
  16095. When calling from a program, give three arguments:
  16096. BUFFER (or buffer name), START and END.
  16097. START and END specify the portion of the current buffer to be copied.
  16098. Fcopy-to-buffer
  16099. Copy to specified buffer the text of the region.
  16100. It is inserted into that buffer, replacing existing text there.
  16101.  
  16102. When calling from a program, give three arguments:
  16103. BUFFER (or buffer name), START and END.
  16104. START and END specify the portion of the current buffer to be copied.
  16105. Fmark
  16106. Return this buffer's mark value as integer, or nil if no mark.
  16107.  
  16108. If `zmacs-regions' is true, then this returns nil unless the region is
  16109. currently in the active (highlighted) state.  With an argument of t, this
  16110. returns the mark (if there is one) regardless of the active-region state.
  16111. You should *generally* not use the mark unless the region is active, if
  16112. the user has expressed a preference for the active-region model.
  16113.  
  16114. If you are using this in an editing command, you are most likely making
  16115. a mistake; see the documentation of `set-mark'.
  16116. Fset-mark
  16117. Set this buffer's mark to POS.  Don't use this function!
  16118. That is to say, don't use this function unless you want
  16119. the user to see that the mark has moved, and you want the previous
  16120. mark position to be lost.
  16121.  
  16122. Normally, when a new mark is set, the old one should go on the stack.
  16123. This is why most applications should use push-mark, not set-mark.
  16124.  
  16125. Novice Emacs Lisp programmers often try to use the mark for the wrong
  16126. purposes.  The mark saves a location for the user's convenience.
  16127. Most editing commands should not alter the mark.
  16128. To remember a location for internal use in the Lisp program,
  16129. store it in a Lisp variable.  Example:
  16130.  
  16131.    (let ((beg (point))) (forward-line 1) (delete-region beg (point))).
  16132. Vmark-ring
  16133. The list of former marks of the current buffer, most recent first.
  16134. Vglobal-mark-ring
  16135. The list of saved global marks, most recent first.
  16136. Fset-mark-command
  16137. Set mark at where point is, or jump to mark.
  16138. With no prefix argument, set mark, push old mark position on local mark
  16139. ring, and push mark on global mark ring.
  16140. With argument, jump to mark, and pop a new position for mark off the ring
  16141. (does not affect global mark ring).
  16142.  
  16143. Novice Emacs Lisp programmers often try to use the mark for the wrong
  16144. purposes.  See the documentation of `set-mark' for more information.
  16145. Fpush-mark
  16146. Set mark at LOCATION (point, by default) and push old mark on mark ring.
  16147. If the last global mark pushed was not in the current buffer,
  16148. also push LOCATION on the global mark ring.
  16149. Display `Mark set' unless the optional second arg NOMSG is non-nil.
  16150. Activate mark if optional third arg ACTIVATE-REGION non-nil.
  16151.  
  16152. Novice Emacs Lisp programmers often try to use the mark for the wrong
  16153. purposes.  See the documentation of `set-mark' for more information.
  16154. Fpop-mark
  16155. Pop off mark ring into the buffer's actual mark.
  16156. Does not set point.  Does nothing if mark ring is empty.
  16157. Fexchange-point-and-mark
  16158. Put the mark where point is now, and point where the mark is now.
  16159. The mark is activated unless DONT-ACTIVATE-REGION is non-nil.
  16160. Fmark-something
  16161. internal function used by mark-sexp, mark-word, etc.
  16162. Fpop-global-mark
  16163. Pop off global mark ring and jump to the top location.
  16164. Fnext-line
  16165. Move cursor vertically down ARG lines.
  16166. If there is no character in the target line exactly under the current column,
  16167. the cursor is positioned after the character in that line which spans this
  16168. column, or at the end of the line if it is not long enough.
  16169.  
  16170. If there is no line in the buffer after this one, behavior depends on the
  16171. value of `next-line-add-newlines'.  If non-nil, it inserts a newline character
  16172. to create a line, and moves the cursor to that line.  Otherwise it moves the
  16173. cursor to the end of the buffer.
  16174.  
  16175. The command \[set-goal-column] can be used to create
  16176. a semipermanent goal column to which this command always moves.
  16177. Then it does not try to move vertically.  This goal column is stored
  16178. in `goal-column', which is nil when there is none.
  16179.  
  16180. If you are thinking of using this in a Lisp program, consider
  16181. using `forward-line' instead.  It is usually easier to use
  16182. and more reliable (no dependence on goal column, etc.).
  16183. Fprevious-line
  16184. Move cursor vertically up ARG lines.
  16185. If there is no character in the target line exactly over the current column,
  16186. the cursor is positioned after the character in that line which spans this
  16187. column, or at the end of the line if it is not long enough.
  16188.  
  16189. The command \[set-goal-column] can be used to create
  16190. a semipermanent goal column to which this command always moves.
  16191. Then it does not try to move vertically.
  16192.  
  16193. If you are thinking of using this in a Lisp program, consider using
  16194. `forward-line' with a negative argument instead.  It is usually easier
  16195. to use and more reliable (no dependence on goal column, etc.).
  16196. Vtemporary-goal-column
  16197. Current goal column for vertical motion.
  16198. It is the column where point was
  16199. at the start of current run of vertical motion commands.
  16200. When the `track-eol' feature is doing its job, the value is 9999.
  16201. Fset-goal-column
  16202. Set the current horizontal position as a goal for \[next-line] and \[previous-line].
  16203. Those commands will move to this position in the line moved to
  16204. rather than trying to keep the same horizontal position.
  16205. With a non-nil argument, clears out the goal column
  16206. so that \[next-line] and \[previous-line] resume vertical motion.
  16207. The goal column is stored in the variable `goal-column'.
  16208. Fscroll-other-window-down
  16209. Scroll the "other window" down.
  16210. For more details, see the documentation for `scroll-other-window'.
  16211. Fbeginning-of-buffer-other-window
  16212. Move point to the beginning of the buffer in the other window.
  16213. Leave mark at previous position.
  16214. With arg N, put point N/10 of the way from the true beginning.
  16215. Fend-of-buffer-other-window
  16216. Move point to the end of the buffer in the other window.
  16217. Leave mark at previous position.
  16218. With arg N, put point N/10 of the way from the true end.
  16219. Ftranspose-chars
  16220. Interchange characters around point, moving forward one character.
  16221. With prefix arg ARG, effect is to take character before point
  16222. and drag it forward past ARG other characters (backward if ARG negative).
  16223. If no argument and at end of line, the previous two chars are exchanged.
  16224. Ftranspose-preceding-chars
  16225. Interchange characters before point.
  16226. With prefix arg ARG, effect is to take character before point
  16227. and drag it forward past ARG other characters (backward if ARG negative).
  16228. If no argument and not at start of line, the previous two chars are exchanged.
  16229. Ftranspose-words
  16230. Interchange words around point, leaving point at end of them.
  16231. With prefix arg ARG, effect is to take word before or around point
  16232. and drag it forward past ARG other words (backward if ARG negative).
  16233. If ARG is zero, the words around or after point and around or after mark
  16234. are interchanged.
  16235. Ftranspose-sexps
  16236. Like \[transpose-words] but applies to sexps.
  16237. Does not work on a sexp that point is in the middle of
  16238. if it is a list or string.
  16239. Ftranspose-lines
  16240. Exchange current line and previous line, leaving point after both.
  16241. With argument ARG, takes previous line and moves it past ARG lines.
  16242. With argument 0, interchanges line point is in with line mark is in.
  16243. Vcomment-indent-hook
  16244. Obsolete variable for function to compute desired indentation for a comment.
  16245. Use `comment-indent-function' instead.
  16246. This function is called with no args with point at the beginning of
  16247. the comment's starting delimiter.
  16248. Vcomment-indent-function
  16249. Function to compute desired indentation for a comment.
  16250. This function is called with no args with point at the beginning of
  16251. the comment's starting delimiter.
  16252. Findent-for-comment
  16253. Indent this line's comment to comment column, or insert an empty comment.
  16254. Fset-comment-column
  16255. Set the comment column based on point.
  16256. With no arg, set the comment column to the current column.
  16257. With just minus as arg, kill any comment on this line.
  16258. With any other arg, set comment column to indentation of the previous comment
  16259.  and then align or create a comment on this line at that column.
  16260. Fkill-comment
  16261. Kill the comment on this line, if any.
  16262. With argument, kill comments on that many lines starting with this one.
  16263. Fcomment-region
  16264. Comment or uncomment each line in the region.
  16265. With just C-u prefix arg, uncomment each line in region.
  16266. Numeric prefix arg ARG means use ARG comment characters.
  16267. If ARG is negative, delete that many comment characters instead.
  16268. Comments are terminated on each line, even for syntax in which newline does
  16269. not end the comment.  Blank lines do not get comments.
  16270. Fprefix-region
  16271. Add a prefix string to each line between mark and point.
  16272. Fbackward-word
  16273. Move backward until encountering the end of a word.
  16274. With argument, do this that many times.
  16275. In programs, it is faster to call `forward-word' with negative arg.
  16276. Fmark-word
  16277. Set mark arg words away from point.
  16278. Fkill-word
  16279. Kill characters forward until encountering the end of a word.
  16280. With argument, do this that many times.
  16281. Fbackward-kill-word
  16282. Kill characters backward until encountering the end of a word.
  16283. With argument, do this that many times.
  16284. Fcurrent-word
  16285. Return the word point is on (or a nearby word) as a string.
  16286. If optional arg STRICT is non-nil, return nil unless point is within
  16287. or adjacent to a word.
  16288. If point is not between two word-constituent characters, but immediately
  16289. follows one, move back first.
  16290. Otherwise, if point precedes a word constituent, move forward first.
  16291. Otherwise, move backwards until a word constituent is found and get that word;
  16292. if you a newlines is reached first, move forward instead.
  16293. Vcomment-line-break-function
  16294. *Mode-specific function which line breaks and continues a comment.
  16295.  
  16296. This function is only called during auto-filling of a comment section.
  16297. The function should take a single optional argument which is a flag
  16298. indicating whether soft newlines should be inserted.
  16299. Vnormal-auto-fill-function
  16300. The function to use for `auto-fill-function' if Auto Fill mode is turned on.
  16301. Some major modes set this.
  16302. Fauto-fill-mode
  16303. Toggle auto-fill mode.
  16304. With arg, turn auto-fill mode on if and only if arg is positive.
  16305. In Auto-Fill mode, inserting a space at a column beyond `current-fill-column'
  16306. automatically breaks the line at a previous space.
  16307.  
  16308. The value of `normal-auto-fill-function' specifies the function to use
  16309. for `auto-fill-function' when turning Auto Fill mode on.
  16310. Fauto-fill-function
  16311. Automatically break line at a previous space, in insertion of text.
  16312. Fturn-on-auto-fill
  16313. Unconditionally turn on Auto Fill mode.
  16314. Fset-fill-column
  16315. Set `fill-column' to specified argument.
  16316. Just \[universal-argument] as argument means to use the current column
  16317. The variable `fill-column' has a separate value for each buffer.
  16318. Findent-new-comment-line
  16319. Break line at point and indent, continuing comment if within one.
  16320. This indents the body of the continued comment
  16321. under the previous comment line.
  16322.  
  16323. This command is intended for styles where you write a comment per line,
  16324. starting a new comment (and terminating it if necessary) on each line.
  16325. If you want to continue one comment across several lines, use \[newline-and-indent].
  16326.  
  16327. If a fill column is specified, it overrides the use of the comment column
  16328. or comment indentation.
  16329.  
  16330. The inserted newline is marked hard if `use-hard-newlines' is true, 
  16331. unless optional argument SOFT is non-nil.
  16332. Fset-selective-display
  16333. Set `selective-display' to ARG; clear it if no arg.
  16334. When the value of `selective-display' is a number > 0,
  16335. lines whose indentation is >= that value are not displayed.
  16336. The variable `selective-display' has a separate value for each buffer.
  16337. Fnuke-selective-display
  16338. Ensure that the buffer is not in selective-display mode.
  16339. If `selective-display' is t, then restore the buffer text to it's original
  16340. state before disabling selective display.
  16341. Voverwrite-mode-textual
  16342. The string displayed in the mode line when in overwrite mode.
  16343. Voverwrite-mode-binary
  16344. The string displayed in the mode line when in binary overwrite mode.
  16345. Foverwrite-mode
  16346. Toggle overwrite mode.
  16347. With arg, turn overwrite mode on iff arg is positive.
  16348. In overwrite mode, printing characters typed in replace existing text
  16349. on a one-for-one basis, rather than pushing it to the right.  At the
  16350. end of a line, such characters extend the line.  Before a tab,
  16351. such characters insert until the tab is filled in.
  16352. \[quoted-insert] still inserts characters in overwrite mode; this
  16353. is supposed to make it easier to insert characters when necessary.
  16354. Fbinary-overwrite-mode
  16355. Toggle binary overwrite mode.
  16356. With arg, turn binary overwrite mode on iff arg is positive.
  16357. In binary overwrite mode, printing characters typed in replace
  16358. existing text.  Newlines are not treated specially, so typing at the
  16359. end of a line joins the line to the next, with the typed character
  16360. between them.  Typing before a tab character simply replaces the tab
  16361. with the character typed.
  16362. \[quoted-insert] replaces the text at the cursor, just as ordinary
  16363. typing characters do.
  16364.  
  16365. Note that binary overwrite mode is not its own minor mode; it is a
  16366. specialization of overwrite-mode, entered by setting the
  16367. `overwrite-mode' variable to `overwrite-mode-binary'.
  16368. Fline-number-mode
  16369. Toggle Line Number mode.
  16370. With arg, turn Line Number mode on iff arg is positive.
  16371. When Line Number mode is enabled, the line number appears
  16372. in the mode line.
  16373. Fcolumn-number-mode
  16374. Toggle Column Number mode.
  16375. With arg, turn Column Number mode on iff arg is positive.
  16376. When Column Number mode is enabled, the column number appears
  16377. in the mode line.
  16378. Fblink-matching-open
  16379. Move cursor momentarily to the beginning of the sexp before point.
  16380. Fassoc-ignore-case
  16381. Like `assoc', but assumes KEY is a string and ignores case when comparing.
  16382. Fdefine-mail-user-agent
  16383. Define a symbol to identify a mail-sending package for `mail-user-agent'.
  16384.  
  16385. SYMBOL can be any Lisp symbol.  Its function definition and/or
  16386. value as a variable do not matter for this usage; we use only certain
  16387. properties on its property list, to encode the rest of the arguments.
  16388.  
  16389. COMPOSEFUNC is program callable function that composes an outgoing
  16390. mail message buffer.  This function should set up the basics of the
  16391. buffer without requiring user interaction.  It should populate the
  16392. standard mail headers, leaving the `to:' and `subject:' headers blank
  16393. by default.
  16394.  
  16395. COMPOSEFUNC should accept several optional arguments--the same
  16396. arguments that `compose-mail' takes.  See that function's documentation.
  16397.  
  16398. SENDFUNC is the command a user would run to send the message.
  16399.  
  16400. Optional ABORTFUNC is the command a user would run to abort the
  16401. message.  For mail packages that don't have a separate abort function,
  16402. this can be `kill-buffer' (the equivalent of omitting this argument).
  16403.  
  16404. Optional HOOKVAR is a hook variable that gets run before the message
  16405. is actually sent.  Callers that use the `mail-user-agent' may
  16406. install a hook function temporarily on this hook variable.
  16407. If HOOKVAR is nil, `mail-send-hook' is used.
  16408.  
  16409. The properties used on SYMBOL are `composefunc', `sendfunc',
  16410. `abortfunc', and `hookvar'.
  16411. Fcompose-mail
  16412. Start composing a mail message to send.
  16413. This uses the user's chosen mail composition package
  16414. as selected with the variable `mail-user-agent'.
  16415. The optional arguments TO and SUBJECT specify recipients
  16416. and the initial Subject field, respectively.
  16417.  
  16418. OTHER-HEADERS is an alist specifying additional
  16419. header fields.  Elements look like (HEADER . VALUE) where both
  16420. HEADER and VALUE are strings.
  16421.  
  16422. CONTINUE, if non-nil, says to continue editing a message already
  16423. being composed.
  16424.  
  16425. SWITCH-FUNCTION, if non-nil, is a function to use to
  16426. switch to and display the buffer used for mail composition.
  16427.  
  16428. YANK-ACTION, if non-nil, is an action to perform, if and when necessary,
  16429. to insert the raw text of the message being replied to.
  16430. It has the form (FUNCTION . ARGS).  The user agent will apply
  16431. FUNCTION to ARGS, to insert the raw text of the original message.
  16432. (The user agent will also run `mail-citation-hook', *after* the
  16433. original text has been inserted in this way.)
  16434.  
  16435. SEND-ACTIONS is a list of actions to call when the message is sent.
  16436. Each action has the form (FUNCTION . ARGS).
  16437. Fcompose-mail-other-window
  16438. Like \[compose-mail], but edit the outgoing message in another window.
  16439. Fcompose-mail-other-frame
  16440. Like \[compose-mail], but edit the outgoing message in another frame.
  16441. Fset-variable
  16442. Set VARIABLE to VALUE.  VALUE is a Lisp object.
  16443. When using this interactively, supply a Lisp expression for VALUE.
  16444. If you want VALUE to be a string, you must surround it with doublequotes.
  16445.  
  16446. If VARIABLE has a `variable-interactive' property, that is used as if
  16447. it were the arg to `interactive' (which see) to interactively read the value.
  16448. Factivate-region
  16449. Activate the region, if `zmacs-regions' is true.
  16450. Setting `zmacs-regions' to true causes LISPM-style active regions to be used.
  16451. This function has no effect if `zmacs-regions' is false.
  16452. Fregion-exists-p
  16453. Non-nil iff the region exists.
  16454. If active regions are in use (i.e. `zmacs-regions' is true), this means that
  16455.  the region is active.  Otherwise, this means that the user has pushed
  16456.  a mark in this buffer at some point in the past.
  16457. The functions `region-beginning' and `region-end' can be used to find the
  16458.  limits of the region.
  16459. Fregion-active-p
  16460. Non-nil iff the region is active.
  16461. If `zmacs-regions' is true, this is equivalent to `region-exists-p'.
  16462. Otherwise, this function always returns false.
  16463. Fcapitalize-region-or-word
  16464. Capitalize the selected region or the following word (or ARG words).
  16465. Fupcase-region-or-word
  16466. Upcase the selected region or the following word (or ARG words).
  16467. Fdowncase-region-or-word
  16468. Downcase the selected region or the following word (or ARG words).
  16469. Vzmacs-activate-region-hook
  16470. Function or functions called when the region becomes active;
  16471. see the variable `zmacs-regions'.
  16472. Vzmacs-deactivate-region-hook
  16473. Function or functions called when the region becomes inactive;
  16474. see the variable `zmacs-regions'.
  16475. Vzmacs-update-region-hook
  16476. Function or functions called when the active region changes.
  16477. This is called after each command that sets `zmacs-region-stays' to t.
  16478. See the variable `zmacs-regions'.
  16479. Vzmacs-region-extent
  16480. The extent of the zmacs region; don't use this.
  16481. Vzmacs-region-rectangular-p
  16482. Whether the zmacs region is a rectangle; don't use this.
  16483. Fzmacs-region-buffer
  16484. Return the buffer containing the zmacs region, or nil.
  16485. Fzmacs-activate-region
  16486. Make the region between `point' and `mark' be active (highlighted),
  16487. if `zmacs-regions' is true.  Only a very small number of commands
  16488. should ever do this.  Calling this function will call the hook
  16489. `zmacs-activate-region-hook', if the region was previously inactive.
  16490. Calling this function ensures that the region stays active after the
  16491. current command terminates, even if `zmacs-region-stays' is not set.
  16492. Returns t if the region was activated (i.e. if `zmacs-regions' if t).
  16493. Fzmacs-deactivate-region
  16494. Make the region between `point' and `mark' no longer be active,
  16495. if `zmacs-regions' is true.  You shouldn't need to call this; the
  16496. command loop calls it when appropriate.  Calling this function will
  16497. call the hook `zmacs-deactivate-region-hook', if the region was
  16498. previously active.  Returns t if the region had been active, nil
  16499. otherwise.
  16500. Fzmacs-update-region
  16501. Update the highlighted region between `point' and `mark'.
  16502. You shouldn't need to call this; the command loop calls it
  16503. when appropriate.  Calling this function will call the hook
  16504. `zmacs-update-region-hook', if the region is active.
  16505. Vmessage-stack
  16506. An alist of label/string pairs representing active echo-area messages.
  16507. The first element in the list is currently displayed in the echo area.
  16508. Do not modify this directly--use the `message' or 
  16509. `display-message'/`clear-message' functions.
  16510. Vremove-message-hook
  16511. A function or list of functions to be called when a message is removed
  16512. from the echo area at the bottom of the frame.  The label of the removed
  16513. message is passed as the first argument, and the text of the message
  16514. as the second argument.
  16515. Fshow-message-log
  16516. Show the " *Message-Log*" buffer, which contains old messages and errors.
  16517. Vlog-message-filter-function
  16518. Value must be a function of two arguments: a symbol (label) and 
  16519. a string (message).  It should return non-nil to indicate a message
  16520. should be logged.  Possible values include 'log-message-filter and
  16521. 'log-message-filter-errors-only.
  16522. Flog-message-filter
  16523. Default value of log-message-filter-function.
  16524. Mesages whose text matches one of the log-message-ignore-regexps
  16525. or whose label appears in log-message-ignore-labels are not saved.
  16526. Flog-message-filter-errors-only
  16527. For use as the log-message-filter-function.  Only logs error messages.
  16528. Flog-message
  16529. Stuff a copy of the message into the " *Message-Log*" buffer,
  16530. if it satisfies the log-message-filter-function.
  16531.  
  16532. For use on remove-message-hook.
  16533. Fmessage-displayed-p
  16534. Return a non-nil value if a message is presently displayed in the
  16535. minibuffer's echo area.  If optional argument RETURN-STRING is non-nil,
  16536. return a string containing the message, otherwise just return t.
  16537. Fclear-message
  16538. Remove any message with the given LABEL from the message-stack,
  16539. erasing it from the echo area if it's currently displayed there.
  16540. If a message remains at the head of the message-stack and NO-RESTORE
  16541. is nil, it will be displayed.  The string which remains in the echo
  16542. area will be returned, or nil if the message-stack is now empty.
  16543. If LABEL is nil, the entire message-stack is cleared.
  16544.  
  16545. Unless you need the return value or you need to specify a label,
  16546. you should just use (message nil).
  16547. Fdisplay-message
  16548. Print a one-line message at the bottom of the frame.  First argument
  16549. LABEL is an identifier for this message.  MESSAGE is the string to display.
  16550. Use `clear-message' to remove a labelled message.
  16551.  
  16552. Here are some standard labels (those marked with `*' are not logged
  16553. by default--see the `log-message-ignore-labels' variable):
  16554.     message       default label used by the `message' function
  16555.     error         default label used for reporting errors
  16556.   * progress      progress indicators like "Converting... 45%"
  16557.   * prompt        prompt-like messages like "I-search: foo"
  16558.   * no-log        messages that should never be logged
  16559. Fcurrent-message
  16560. Returns the current message in the echo area, or nil.
  16561. The FRAME argument is currently unused.
  16562. Fmessage
  16563. Print a one-line message at the bottom of the frame.
  16564. The arguments are the same as to `format'.
  16565.  
  16566. If the only argument is nil, clear any existing message; let the
  16567. minibuffer contents show.
  16568. Vlog-warning-suppressed-classes
  16569. List of classes of warnings that shouldn't be logged or displayed.
  16570. If any of the CLASS symbols associated with a warning is the same as
  16571. any of the symbols listed here, the warning will be completely ignored,
  16572. as it they never happened.
  16573.  
  16574. NOTE: In most circumstances, you should *not* set this variable.
  16575. Set `display-warning-suppressed-classes' instead.  That way the suppressed
  16576. warnings are not displayed but are still unobtrusively logged.
  16577.  
  16578. See also `log-warning-minimum-level' and `display-warning-minimum-level'.
  16579. Vwarning-count
  16580. Count of the number of warning messages displayed so far.
  16581. Fwarning-level-p
  16582. Non-nil if LEVEL specifies a warning level.
  16583. Fafter-init-display-warnings
  16584. Display warnings deferred till after the init file is run.
  16585. Warnings that occur before then are deferred so that warning
  16586. suppression in the .emacs file will be honored.
  16587. Fdisplay-warning
  16588. Display a warning message.
  16589. CLASS should be a symbol describing what sort of warning this is, such
  16590. as `resource' or `key-mapping'.  A list of such symbols is also
  16591. accepted. (Individual classes can be suppressed; see
  16592. `display-warning-suppressed-classes'.) Optional argument LEVEL can
  16593. be used to specify a priority for the warning, other than default priority
  16594. `warning'. (See `display-warning-minimum-level').  The message is
  16595. inserted into the *Warnings* buffer, which is made visible at appropriate
  16596. times.
  16597. Fwarn
  16598. Display a warning message.
  16599. The message is constructed by passing all args to `format'.  The message
  16600. is placed in the *Warnings* buffer, which will be popped up at the next
  16601. redisplay.  The class of the warning is `warning'.  See also
  16602. `display-warning'.
  16603. Fdisplay-warning-buffer
  16604. Make the buffer that contains the warnings be visible.
  16605. The C code calls this periodically, right before redisplay.
  16606. Femacs-name
  16607. Return the printable name of this instance of Emacs.
  16608. Vglobal-map
  16609. Default global keymap mapping XEmacs keyboard input into commands.
  16610. The value is a keymap which is usually (but not necessarily) XEmacs's
  16611. global map.
  16612. Vesc-map
  16613. Default keymap for ESC (meta) commands.
  16614. The normal global definition of the character ESC indirects to this keymap.
  16615. Vctl-x-map
  16616. Default keymap for C-x commands.
  16617. The normal global definition of the character C-x indirects to this keymap.
  16618. Vctl-x-4-map
  16619. Keymap for subcommands of C-x 4
  16620. Vctl-x-5-map
  16621. Keymap for subcommands of C-x 5
  16622. Vmode-specific-map
  16623. Keymap for characters following C-c.
  16624. Vabbrev-table-name-list
  16625. List of symbols whose values are abbrev tables.
  16626. Vabbrevs-changed
  16627. Set non-nil by defining or altering any word abbrevs.
  16628. This causes `save-some-buffers' to offer to save the abbrevs.
  16629. Fmake-abbrev-table
  16630. Create a new, empty abbrev table object.
  16631. Fclear-abbrev-table
  16632. Undefine all abbrevs in abbrev table TABLE, leaving it empty.
  16633. Fdefine-abbrev-table
  16634. Define TABNAME (a symbol) as an abbrev table name.
  16635. Define abbrevs in it according to DEFINITIONS, which is a list of elements
  16636. of the form (ABBREVNAME EXPANSION HOOK USECOUNT).
  16637. Fdefine-abbrev
  16638. Define an abbrev in TABLE named NAME, to expand to EXPANSION or call HOOK.
  16639. NAME and EXPANSION are strings.  Hook is a function or `nil'.
  16640. To undefine an abbrev, define it with an expansion of `nil'.
  16641. Fdefine-global-abbrev
  16642. Define ABBREV as a global abbreviation for EXPANSION.
  16643. Fdefine-mode-abbrev
  16644. Define ABBREV as a mode-specific abbreviation for EXPANSION.
  16645. Fabbrev-symbol
  16646. Return the symbol representing abbrev named ABBREV.
  16647. This symbol's name is ABBREV, but it is not the canonical symbol of that name;
  16648. it is interned in an abbrev-table rather than the normal obarray.
  16649. The value is nil if that abbrev is not defined.
  16650. Optional second arg TABLE is abbrev table to look it up in.
  16651. The default is to try buffer's mode-specific abbrev table, then global table.
  16652. Fabbrev-expansion
  16653. Return the string that ABBREV expands into in the current buffer.
  16654. Optionally specify an abbrev table as second arg;
  16655. then ABBREV is looked up in that table only.
  16656. Funexpand-abbrev
  16657. Undo the expansion of the last abbrev that expanded.
  16658. This differs from ordinary undo in that other editing done since then
  16659. is not undone.
  16660. Finsert-abbrev-table-description
  16661. Insert before point a full description of abbrev table named NAME.
  16662. NAME is a symbol whose value is an abbrev table.
  16663. If optional 2nd arg HUMAN is non-nil, insert a human-readable description.
  16664. Otherwise the description is an expression,
  16665. a call to `define-abbrev-table', which would
  16666. define the abbrev table NAME exactly as it is currently defined.
  16667. Fabbrev-mode
  16668. Toggle abbrev mode.
  16669. With argument ARG, turn abbrev mode on iff ARG is positive.
  16670. In abbrev mode, inserting an abbreviation causes it to expand
  16671. and be replaced by its expansion.
  16672. Vedit-abbrevs-map
  16673. Keymap used in edit-abbrevs.
  16674. Fkill-all-abbrevs
  16675. Undefine all defined abbrevs.
  16676. Finsert-abbrevs
  16677. Insert after point a description of all defined abbrevs.
  16678. Mark is set after the inserted text.
  16679. Flist-abbrevs
  16680. Display a list of all defined abbrevs.
  16681. Fedit-abbrevs-mode
  16682. Major mode for editing the list of abbrev definitions.
  16683. \{edit-abbrevs-map}
  16684. Fedit-abbrevs
  16685. Alter abbrev definitions by editing a list of them.
  16686. Selects a buffer containing a list of abbrev definitions.
  16687. You can edit them and type \<edit-abbrevs-map>\[edit-abbrevs-redefine] to redefine abbrevs
  16688. according to your editing.
  16689. Buffer contains a header line for each abbrev table,
  16690.  which is the abbrev table name in parentheses.
  16691. This is followed by one line per abbrev in that table:
  16692. NAME   USECOUNT   EXPANSION   HOOK
  16693. where NAME and EXPANSION are strings with quotes,
  16694. USECOUNT is an integer, and HOOK is any valid function
  16695. or may be omitted (it is usually omitted).
  16696. Fedit-abbrevs-redefine
  16697. Redefine abbrevs according to current buffer contents.
  16698. Fdefine-abbrevs
  16699. Define abbrevs according to current visible buffer contents.
  16700. See documentation of `edit-abbrevs' for info on the format of the
  16701. text you must have in the buffer.
  16702. With argument, eliminate all abbrev definitions except
  16703. the ones defined from the buffer now.
  16704. Fread-abbrev-file
  16705. Read abbrev definitions from file written with `write-abbrev-file'.
  16706. Optional argument FILE is the name of the file to read;
  16707. it defaults to the value of `abbrev-file-name'.
  16708. Optional second argument QUIETLY non-nil means don't print anything.
  16709. Fquietly-read-abbrev-file
  16710. Read abbrev definitions from file written with write-abbrev-file.
  16711. Optional argument FILE is the name of the file to read;
  16712. it defaults to the value of `abbrev-file-name'.
  16713. Does not print anything.
  16714. Fwrite-abbrev-file
  16715. Write all abbrev definitions to a file of Lisp code.
  16716. The file written can be loaded in another session to define the same abbrevs.
  16717. The argument FILE is the file name to write.
  16718. Fadd-mode-abbrev
  16719. Define mode-specific abbrev for last word(s) before point.
  16720. Argument is how many words before point form the expansion;
  16721. or zero means the region is the expansion.
  16722. A negative argument means to undefine the specified abbrev.
  16723. Reads the abbreviation in the minibuffer.
  16724.  
  16725. Don't use this function in a Lisp program; use `define-abbrev' instead.
  16726. Fadd-global-abbrev
  16727. Define global (all modes) abbrev for last word(s) before point.
  16728. The prefix argument specifies the number of words before point that form the
  16729. expansion; or zero means the region is the expansion.
  16730. A negative argument means to undefine the specified abbrev.
  16731. This command uses the minibuffer to read the abbreviation.
  16732.  
  16733. Don't use this function in a Lisp program; use `define-abbrev' instead.
  16734. Finverse-add-mode-abbrev
  16735. Define last word before point as a mode-specific abbrev.
  16736. With prefix argument N, defines the Nth word before point.
  16737. This command uses the minibuffer to read the expansion.
  16738. Expands the abbreviation after defining it.
  16739. Finverse-add-global-abbrev
  16740. Define last word before point as a global (mode-independent) abbrev.
  16741. With prefix argument N, defines the Nth word before point.
  16742. This command uses the minibuffer to read the expansion.
  16743. Expands the abbreviation after defining it.
  16744. Fabbrev-prefix-mark
  16745. Mark current point as the beginning of an abbrev.
  16746. Abbrev to be expanded starts here rather than at beginning of word.
  16747. This way, you can expand an abbrev with a prefix: insert the prefix,
  16748. use this command, then insert the abbrev.
  16749. Fexpand-region-abbrevs
  16750. For abbrev occurrence in the region, offer to expand it.
  16751. The user is asked to type y or n for each occurrence.
  16752. A prefix argument means don't query; expand all abbrevs.
  16753. If called from a Lisp program, arguments are START END &optional NOQUERY.
  16754. Fdefine-derived-mode
  16755. Create a new mode as a variant of an existing mode.
  16756.  
  16757. The arguments to this command are as follow:
  16758.  
  16759. CHILD:     the name of the command for the derived mode.
  16760. PARENT:    the name of the command for the parent mode (ie. text-mode).
  16761. NAME:      a string which will appear in the status line (ie. "Hypertext")
  16762. DOCSTRING: an optional documentation string--if you do not supply one,
  16763.            the function will attempt to invent something useful.
  16764. BODY:      forms to execute just before running the
  16765.            hooks for the new mode.
  16766.  
  16767. Here is how you could define LaTeX-Thesis mode as a variant of LaTeX mode:
  16768.  
  16769.   (define-derived-mode LaTeX-thesis-mode LaTeX-mode "LaTeX-Thesis")
  16770.  
  16771. You could then make new key bindings for `LaTeX-thesis-mode-map'
  16772. without changing regular LaTeX mode.  In this example, BODY is empty,
  16773. and DOCSTRING is generated by default.
  16774.  
  16775. On a more complicated level, the following command uses sgml-mode as
  16776. the parent, and then sets the variable `case-fold-search' to nil:
  16777.  
  16778.   (define-derived-mode article-mode sgml-mode "Article"
  16779.     "Major mode for editing technical articles."
  16780.     (setq case-fold-search nil))
  16781.  
  16782. Note that if the documentation string had been left out, it would have
  16783. been generated automatically, with a reference to the keymap.
  16784. Fderived-mode-class
  16785. Find the class of a major mode.
  16786. A mode's class is the first ancestor which is NOT a derived mode.
  16787. Use the `derived-mode-parent' property of the symbol to trace backwards.
  16788. Fderived-mode-setup-function-name
  16789. Construct a setup-function name based on a mode name.
  16790. Fderived-mode-hooks-name
  16791. Construct a hooks name based on a mode name.
  16792. Fderived-mode-map-name
  16793. Construct a map name based on a mode name.
  16794. Fderived-mode-syntax-table-name
  16795. Construct a syntax-table name based on a mode name.
  16796. Fderived-mode-abbrev-table-name
  16797. Construct an abbrev-table name based on a mode name.
  16798. Fderived-mode-init-mode-variables
  16799. Initialise variables for a new mode. 
  16800. Right now, if they don't already exist, set up a blank keymap, an
  16801. empty syntax table, and an empty abbrev table -- these will be merged
  16802. the first time the mode is used.
  16803. Fderived-mode-make-docstring
  16804. Construct a docstring for a new mode if none is provided.
  16805. Fderived-mode-set-keymap
  16806. Set the keymap of the new mode, maybe merging with the parent.
  16807. Fderived-mode-set-syntax-table
  16808. Set the syntax table of the new mode, maybe merging with the parent.
  16809. Fderived-mode-set-abbrev-table
  16810. Set the abbrev table if it exists.  
  16811. Always merge its parent into it, since the merge is non-destructive.
  16812. Fderived-mode-run-hooks
  16813. Run the hooks if they exist.
  16814. Fderived-mode-merge-keymaps
  16815. Merge an old keymap into a new one.
  16816. The old keymap is set to be the parent of the new one, so that there will
  16817. be automatic inheritance.
  16818. Fderived-mode-merge-syntax-tables
  16819. Merge an old syntax table into a new one.
  16820. Where the new table already has an entry, nothing is copied from the old one.
  16821. Vminibuffer-completion-table
  16822. Alist or obarray used for completion in the minibuffer.
  16823. This becomes the ALIST argument to `try-completion' and `all-completions'.
  16824.  
  16825. The value may alternatively be a function, which is given three arguments:
  16826.   STRING, the current buffer contents;
  16827.   PREDICATE, the predicate for filtering possible matches;
  16828.   CODE, which says what kind of things to do.
  16829. CODE can be nil, t or `lambda'.
  16830. nil means to return the best completion of STRING, nil if there is none,
  16831.   or t if it is was already a unique completion.
  16832. t means to return a list of all possible completions of STRING.
  16833. `lambda' means to return t if STRING is a valid completion as it stands.
  16834. Vminibuffer-completion-predicate
  16835. Within call to `completing-read', this holds the PREDICATE argument.
  16836. Vminibuffer-completion-confirm
  16837. Non-nil => demand confirmation of completion before exiting minibuffer.
  16838. Vminibuffer-confirm-incomplete
  16839. If true, then in contexts where completing-read allows answers which
  16840. are not valid completions, an extra RET must be typed to confirm the
  16841. response.  This is helpful for catching typos, etc.
  16842. Vminibuffer-exit-hook
  16843. Normal hook run just after exit from minibuffer.
  16844. Vminibuffer-help-form
  16845. Value that `help-form' takes on inside the minibuffer.
  16846. Vminibuffer-local-map
  16847. Default keymap to use when reading from the minibuffer.
  16848. Vminibuffer-local-completion-map
  16849. Local keymap for minibuffer input with completion.
  16850. Vminibuffer-local-must-match-map
  16851. Local keymap for minibuffer input with completion, for exact match.
  16852. Vread-expression-map
  16853. Minibuffer keymap used for reading Lisp expressions.
  16854. Vread-shell-command-map
  16855. Minibuffer keymap used by shell-command and related commands.
  16856. Fminibuffer-keyboard-quit
  16857. Abort recursive edit.
  16858. If `zmacs-regions' is true, and the zmacs region is active in this buffer,
  16859. then this key deactivates the region without beeping.
  16860. Vminibuffer-history-variable
  16861. History list symbol to add minibuffer values to.
  16862. Each minibuffer output is added with
  16863.   (set minibuffer-history-variable
  16864.        (cons STRING (symbol-value minibuffer-history-variable)))
  16865. Fread-from-minibuffer
  16866. Read a string from the minibuffer, prompting with string PROMPT.
  16867. If optional second arg INITIAL-CONTENTS is non-nil, it is a string
  16868.   to be inserted into the minibuffer before reading input.
  16869.   If INITIAL-CONTENTS is (STRING . POSITION), the initial input
  16870.   is STRING, but point is placed POSITION characters into the string.
  16871. Third arg KEYMAP is a keymap to use whilst reading;
  16872.   if omitted or nil, the default is `minibuffer-local-map'.
  16873. If fourth arg READ is non-nil, then interpret the result as a lisp object
  16874.   and return that object:
  16875.   in other words, do `(car (read-from-string INPUT-STRING))'
  16876. Fifth arg HISTORY, if non-nil, specifies a history list
  16877.   and optionally the initial position in the list.
  16878.   It can be a symbol, which is the history list variable to use,
  16879.   or it can be a cons cell (HISTVAR . HISTPOS).
  16880.   In that case, HISTVAR is the history list variable to use,
  16881.   and HISTPOS is the initial position (the position in the list
  16882.   which INITIAL-CONTENTS corresponds to).
  16883.   If HISTORY is `t', no history will be recorded.
  16884.   Positions are counted starting from 1 at the beginning of the list.
  16885. Sixth arg ABBREV-TABLE, if non-nil, becomes the value of `local-abbrev-table'
  16886.   in the minibuffer.
  16887.  
  16888. See also the variable completion-highlight-first-word-only for control over
  16889.   completion display.
  16890. Fcompleting-read
  16891. Read a string in the minibuffer, with completion.
  16892. Args: PROMPT, TABLE, PREDICATE, REQUIRE-MATCH, INITIAL-CONTENTS, HISTORY.
  16893. PROMPT is a string to prompt with; normally it ends in a colon and a space.
  16894. TABLE is an alist whose elements' cars are strings, or an obarray.
  16895. PREDICATE limits completion to a subset of TABLE.
  16896. See `try-completion' for more details on completion, TABLE, and PREDICATE.
  16897. If REQUIRE-MATCH is non-nil, the user is not allowed to exit unless
  16898.  the input is (or completes to) an element of TABLE or is null.
  16899.  If it is also not t, Return does not exit if it does non-null completion.
  16900. If INITIAL-CONTENTS is non-nil, insert it in the minibuffer initially.
  16901.   If it is (STRING . POSITION), the initial input
  16902.   is STRING, but point is placed POSITION characters into the string.
  16903. HISTORY, if non-nil, specifies a history list
  16904.   and optionally the initial position in the list.
  16905.   It can be a symbol, which is the history list variable to use,
  16906.   or it can be a cons cell (HISTVAR . HISTPOS).
  16907.   In that case, HISTVAR is the history list variable to use,
  16908.   and HISTPOS is the initial position (the position in the list
  16909.   which INITIAL-CONTENTS corresponds to).
  16910.   If HISTORY is `t', no history will be recorded.
  16911.   Positions are counted starting from 1 at the beginning of the list.
  16912. Completion ignores case if the ambient value of
  16913.   `completion-ignore-case' is non-nil.
  16914. Fminibuffer-complete
  16915. Complete the minibuffer contents as far as possible.
  16916. Return nil if there is no valid completion, else t.
  16917. If no characters can be completed, display a list of possible completions.
  16918. If you repeat this command after it displayed such a list,
  16919. scroll the window of possible completions.
  16920. Fminibuffer-complete-and-exit
  16921. Complete the minibuffer contents, and maybe exit.
  16922. Exit if the name is valid with no completion needed.
  16923. If name was completed to a valid match,
  16924. a repetition of this command will exit.
  16925. Fself-insert-and-exit
  16926. Terminate minibuffer input.
  16927. Fexit-minibuffer
  16928. Terminate this minibuffer argument.
  16929. If minibuffer-confirm-incomplete is true, and we are in a completing-read
  16930. of some kind, and the contents of the minibuffer is not an existing
  16931. completion, requires an additional RET before the minibuffer will be exited
  16932. (assuming that RET was the character that invoked this command:
  16933. the character in question must be typed again).
  16934. Fminibuffer-complete-word
  16935. Complete the minibuffer contents at most a single word.
  16936. After one word is completed as much as possible, a space or hyphen
  16937. is added, provided that matches some possible completion.
  16938. Return nil if there is no valid completion, else t.
  16939. Fminibuffer-smart-select-highlighted-completion
  16940. Select the highlighted text under the mouse as a minibuffer response.
  16941. When the minibuffer is being used to prompt the user for a completion,
  16942. any valid completions which are visible on the frame will highlight
  16943. when the mouse moves over them.  Clicking \<minibuffer-local-map>\[minibuffer-smart-select-highlighted-completion] will select the
  16944. highlighted completion under the mouse.
  16945.  
  16946. If the mouse is clicked while not over a highlighted completion,
  16947. then the global binding of \[minibuffer-smart-select-highlighted-completion] will be executed instead.  In this
  16948. way you can get at the normal global behavior of \[minibuffer-smart-select-highlighted-completion] as well as
  16949. the special minibuffer behavior.
  16950. Fminibuffer-smart-maybe-select-highlighted-completion
  16951. Like minibuffer-smart-select-highlighted-completion but does nothing if
  16952. there is no completion (as opposed to executing the global binding).  Useful
  16953. as the value of `mouse-track-click-hook'.
  16954. Vminibuffer-history
  16955. Default minibuffer history list.
  16956. This is used for all minibuffer input except when an alternate history
  16957. list is specified.
  16958. Vminibuffer-history-sexp-flag
  16959. Non-nil when doing history operations on `command-history'.
  16960. More generally, indicates that the history list being acted on
  16961. contains expressions rather than strings.
  16962. Fprevious-matching-history-element
  16963. Find the previous history element that matches REGEXP.
  16964. (Previous history elements refer to earlier actions.)
  16965. With prefix argument N, search for Nth previous match.
  16966. If N is negative, find the next or Nth next match.
  16967. Fnext-matching-history-element
  16968. Find the next history element that matches REGEXP.
  16969. (The next history element refers to a more recent action.)
  16970. With prefix argument N, search for Nth next match.
  16971. If N is negative, find the previous or Nth previous match.
  16972. Fnext-history-element
  16973. Insert the next element of the minibuffer history into the minibuffer.
  16974. Fprevious-history-element
  16975. Inserts the previous element of the minibuffer history into the minibuffer.
  16976. Fnext-complete-history-element
  16977. Get next element of history which is a completion of minibuffer contents.
  16978. Fprevious-complete-history-element
  16979. Get previous element of history which is a completion of minibuffer contents.
  16980. Fread-expression
  16981. Return a Lisp object read using the minibuffer.
  16982. Prompt with PROMPT.  If non-nil, optional second arg INITIAL-CONTENTS
  16983. is a string to insert in the minibuffer before reading.
  16984. Third arg HISTORY, if non-nil, specifies a history list.
  16985. Fread-string
  16986. Return a string from the minibuffer, prompting with string PROMPT.
  16987. If non-nil, optional second arg INITIAL-CONTENTS is a string to insert
  16988. in the minibuffer before reading.
  16989. Third arg HISTORY, if non-nil, specifies a history list.
  16990. Feval-minibuffer
  16991. Return value of Lisp expression read using the minibuffer.
  16992. Prompt with PROMPT.  If non-nil, optional second arg INITIAL-CONTENTS
  16993. is a string to insert in the minibuffer before reading.
  16994. Third arg HISTORY, if non-nil, specifies a history list.
  16995. Fread-command
  16996. Read the name of a command and return as a symbol.
  16997. Prompts with PROMPT.
  16998. Fread-function
  16999. Read the name of a function and return as a symbol.
  17000. Prompts with PROMPT.
  17001. Fread-variable
  17002. Read the name of a user variable and return it as a symbol.
  17003. Prompts with PROMPT.
  17004. A user variable is one whose documentation starts with a `*' character.
  17005. Fread-buffer
  17006. Read the name of a buffer and return as a string.
  17007. Prompts with PROMPT.  Optional second arg DEFAULT is value to return if user
  17008. enters an empty line.  If optional third arg REQUIRE-MATCH is non-nil,
  17009. only existing buffer names are allowed.
  17010. Fread-number
  17011. Reads a number from the minibuffer.
  17012. Fread-shell-command
  17013. Just like read-string, but uses read-shell-command-map:
  17014. \{read-shell-command-map}
  17015. Fread-file-name
  17016. Read file name, prompting with PROMPT and completing in directory DIR.
  17017. This will prompt with a dialog box if appropriate, according to
  17018.  `should-use-dialog-box-p'.
  17019. Value is not expanded---you must call `expand-file-name' yourself.
  17020. Value is subject to interpreted by substitute-in-file-name however.
  17021. Default name to DEFAULT if user enters a null string.
  17022.  (If DEFAULT is omitted, the visited file name is used,
  17023.   except that if INITIAL-CONTENTS is specified, that combined with DIR is
  17024.   used.)
  17025. Fourth arg MUST-MATCH non-nil means require existing file's name.
  17026.  Non-nil and non-t means also require confirmation after completion.
  17027. Fifth arg INITIAL-CONTENTS specifies text to start with.
  17028. Sixth arg HISTORY specifies the history list to use.  Default is
  17029.  `file-name-history'.
  17030. DIR defaults to current buffer's directory default.
  17031. Fread-directory-name
  17032. Read directory name, prompting with PROMPT and completing in directory DIR.
  17033. This will prompt with a dialog box if appropriate, according to
  17034.  `should-use-dialog-box-p'.
  17035. Value is not expanded---you must call `expand-file-name' yourself.
  17036. Value is subject to interpreted by substitute-in-file-name however.
  17037. Default name to DEFAULT if user enters a null string.
  17038.  (If DEFAULT is omitted, the current buffer's default directory is used.)
  17039. Fourth arg MUST-MATCH non-nil means require existing directory's name.
  17040.  Non-nil and non-t means also require confirmation after completion.
  17041. Fifth arg INITIAL-CONTENTS specifies text to start with.
  17042. Sixth arg HISTORY specifies the history list to use.  Default is
  17043.  `file-name-history'.
  17044. DIR defaults to current buffer's directory default.
  17045. Fappend-expand-filename
  17046. Append STRING to FILE-STRING differently depending on whether STRING
  17047. is a username (~string), an environment variable ($string), 
  17048. or a filename (/string).  The resultant string is returned with the 
  17049. environment variable or username expanded and resolved to indicate 
  17050. whether it is a file(/result) or a directory (/result/).
  17051. Fread-face
  17052. Read the name of a face from the minibuffer and return it as a symbol.
  17053. Vx-library-search-path
  17054. Search path used by `read-color' to find rgb.txt.
  17055. Fread-color
  17056. Read the name of a color from the minibuffer.
  17057. Uses `x-library-search-path' to find rgb.txt in order to build a completion
  17058. table.
  17059. Fread-coding-system
  17060. Read a coding-system (or nil) from the minibuffer.
  17061. Prompting with string PROMPT.
  17062. Fread-non-nil-coding-system
  17063. Read a non-nil coding-system from the minibuffer.
  17064. Prompt with string PROMPT.
  17065. Fshould-use-dialog-box-p
  17066. If non-nil, questions should be asked with a dialog box instead of the
  17067. minibuffer.  This looks at `last-command-event' to see if it was a mouse
  17068. event, and checks whether dialog-support exists and the current device
  17069. supports dialog boxes.
  17070.  
  17071. The dialog box is totally disabled if the variable `use-dialog-box'
  17072. is set to nil.
  17073. Vlist-mode-map
  17074. Local map for buffers containing lists of items.
  17075. Flist-mode
  17076. Major mode for buffer containing lists of items.
  17077. Vlist-mode-extent-old-point
  17078. The value of point when pre-command-hook is called.
  17079. Used to determine the direction of motion.
  17080. Fset-list-mode-extent
  17081. Move to the closest list item and set up the extent for it.
  17082. This is called from `post-command-hook'.
  17083. Fprevious-list-mode-item
  17084. Move to the previous item in list-mode.
  17085. Fnext-list-mode-item
  17086. Move to the next item in list-mode.
  17087. With prefix argument N, move N items (negative N means move backward).
  17088. Fadd-list-mode-item
  17089. Add a new list item in list-mode, from START to END in BUFFER.
  17090. BUFFER defaults to the current buffer.
  17091. This works by creating an extent for the span of text in question.
  17092. If ACTIVATE-CALLBACK is non-nil, it should be a function of three
  17093.   arguments (EVENT EXTENT USER-DATA) that will be called when button2
  17094.   is pressed on the extent.  USER-DATA comes from the optional
  17095.   USER-DATA argument.
  17096. Vcompletion-highlight-first-word-only
  17097. *Completion will only highlight the first blank delimited word if t.
  17098. If the variable in not t or nil, the string is taken as a regexp to match for end
  17099. of highlight
  17100. Vcompletion-setup-hook
  17101. Normal hook run at the end of setting up the text of a completion buffer.
  17102. Vcompletion-default-help-string
  17103. Form the evaluate to get a help string for completion lists.
  17104. This string is inserted at the beginning of the buffer.
  17105. See `display-completion-list'.
  17106. Fdisplay-completion-list
  17107. Display the list of completions, COMPLETIONS, using `standard-output'.
  17108. Each element may be just a symbol or string or may be a list of two
  17109.  strings to be printed as if concatenated.
  17110. Frob a mousable extent onto each completion.  This extent has properties
  17111.  'mouse-face (so it highlights when the mouse passes over it) and
  17112.  'list-mode-item (so it can be located).
  17113.  
  17114. Keywords:
  17115.   :activate-callback (default is `default-choose-completion')
  17116.     See `add-list-mode-item'.
  17117.   :user-data
  17118.     Value passed to activation callback.
  17119.   :window-width
  17120.     If non-nil, width to use in displaying the list, instead of the
  17121.     actual window's width.
  17122.   :help-string (default is the value of `completion-default-help-string')
  17123.     Form to evaluate to get a string to insert at the beginning of
  17124.     the completion list buffer.  This is evaluated when that buffer
  17125.     is the current buffer and after it has been put into
  17126.     completion-list-mode.
  17127.   :reference-buffer (default is the current buffer)
  17128.     This specifies the value of `completion-reference-buffer' in
  17129.     the completion buffer.  This specifies the buffer (normally a
  17130.     minibuffer) that `default-choose-completion' will insert the
  17131.     completion into.
  17132.  
  17133. At the end, run the normal hook `completion-setup-hook'.
  17134. It can find the completion buffer in `standard-output'.
  17135. If `completion-highlight-first-word-only' is non-nil, then only the start
  17136.  of the string is highlighted.
  17137. Vcompletion-display-completion-list-function
  17138. Function to set up the list of completions in the completion buffer.
  17139. The function is called with one argument, the sorted list of completions.
  17140. Particular minibuffer interface functions (e.g. `read-file-name') may
  17141. want to change this.  To do that, set a local value for this variable
  17142. in the minibuffer; that ensures that other minibuffer invocations will
  17143. not be affected.
  17144. Fminibuffer-completion-help
  17145. Display a list of possible completions of the current minibuffer contents.
  17146. The list of completions is determined by calling `all-completions',
  17147. passing it the current minibuffer contents, the value of
  17148. `minibuffer-completion-table', and the value of
  17149. `minibuffer-completion-predicate'.  The list is displayed by calling
  17150. the value of `completion-display-completion-list-function' on the sorted
  17151. list of completions, with the standard output set to the completion
  17152. buffer.
  17153. Fcompletion-list-mode
  17154. Major mode for buffers showing lists of possible completions.
  17155. Type \<completion-list-mode-map>\[choose-completion] in the completion list to select the completion near point.
  17156. Use \<completion-list-mode-map>\[mouse-choose-completion] to select one with the mouse.
  17157. Vcompletion-reference-buffer
  17158. Record the buffer that was current when the completion list was requested.
  17159. This is a local variable in the completion list buffer.
  17160. Initial value is nil to avoid some compiler warnings.
  17161. Vcompletion-base-size
  17162. Number of chars at beginning of minibuffer not involved in completion.
  17163. This is a local variable in the completion list buffer
  17164. but it talks about the buffer in `completion-reference-buffer'.
  17165. If this is nil, it means to compare text to determine which part
  17166. of the tail end of the buffer's text is involved in completion.
  17167. Fdelete-completion-window
  17168. Delete the completion list window.
  17169. Go to the window from which completion was requested.
  17170. Fdefault-choose-completion
  17171. Click on an alternative in the `*Completions*' buffer to choose it.
  17172. Fswitch-to-completions
  17173. Select the completion list window.
  17174. Fmouse-drag-modeline
  17175. Resize a window by dragging its modeline.
  17176. This command should be bound to a button-press event in modeline-map.
  17177. Holding down a mouse button and moving the mouse up and down will
  17178. make the clicked-on window taller or shorter.
  17179. Fmouse-release-modeline
  17180. Handle modeline click EVENT on LINE-NUM by switching buffers.
  17181. If click on left half of a frame's modeline, bury current buffer.
  17182. If click on right half of a frame's modeline, raise bottommost buffer.
  17183. Args are: EVENT, the mouse release event, and LINE-NUM, the line number
  17184. within the frame at which the mouse was first depressed.
  17185. Vmodeline-map
  17186. Keymap consulted for mouse-clicks on the modeline of a window.
  17187. This variable may be buffer-local; its value will be looked up in
  17188. the buffer of the window whose modeline was clicked upon.
  17189. Vminor-mode-alist
  17190. Alist saying how to show minor modes in the modeline.
  17191. Each element looks like (VARIABLE STRING);
  17192. STRING is included in the modeline iff VARIABLE's value is non-nil.
  17193.  
  17194. Actually, STRING need not be a string; any possible modeline element
  17195. is okay.  See `modeline-format'.
  17196. Vminor-mode-map-alist
  17197. Alist of keymaps to use for minor modes.
  17198. Each element looks like (VARIABLE . KEYMAP); KEYMAP is used to read
  17199. key sequences and look up bindings iff VARIABLE's value is non-nil.
  17200. If two active keymaps bind the same key, the keymap appearing earlier
  17201. in the list takes precedence.
  17202. Vmodeline-mousable-minor-mode-extent
  17203. Extent managing the mousable minor mode modeline strings.
  17204. Fadd-minor-mode
  17205. Add a minor mode to `minor-mode-alist' and `minor-mode-map-alist'.
  17206.  
  17207. TOGGLE is a symbol whose value as a variable specifies whether the
  17208. minor mode is active.
  17209.  
  17210.  If TOGGLE has the `:menu-tag' property set to a string, that string
  17211.  will be used as the label on the `modeline-minor-mode-menu' instead
  17212.  of TOGGLE's symbol-name.
  17213.  
  17214.  TOGGLE may have an `:included' property, which determines whether a
  17215.  menu button will be shown for this minor mode in the
  17216.  `modeline-minor-mode-menu'.  This should be either a boolean
  17217.  variable, or an expression evaluating to t or nil.  (See the
  17218.  documentation of `current-menubar' for more information.)
  17219.  
  17220.  It may have an `:active' property also, as documented in
  17221.  `current-menubar'.
  17222.  
  17223. NAME is the name that should appear in the modeline.  It should either
  17224. be a string beginning with a space, or a symbol with a similar string
  17225. as its value.
  17226.  
  17227. KEYMAP is a keymap to make active when the minor mode is active.
  17228.  
  17229. AFTER is the toggling symbol used for another minor mode.  If AFTER is
  17230. non-nil, then it is used to position the new mode in the minor-mode
  17231. alists.
  17232.  
  17233. TOGGLE-FUN specifies an interactive function that is called to toggle
  17234. the mode on and off; this affects what happens when button2 is pressed
  17235. on the mode, and when button3 is pressed somewhere in the list of
  17236. modes.  If TOGGLE-FUN is nil and TOGGLE names an interactive function,
  17237. TOGGLE is used as the toggle function.
  17238.  
  17239. Example: (put 'view-minor-mode :menu-tag "View (minor)")
  17240.          (put 'view-minor-mode :included '(buffer-file-name))
  17241.          (add-minor-mode 'view-minor-mode " View" view-mode-map)
  17242. Fmodeline-minor-mode-menu
  17243. The menu that pops up when you press `button3' inside the
  17244. parentheses on the modeline.
  17245. Vmodeline-minor-mode-map
  17246. Keymap consulted for mouse-clicks on the minor-mode modeline list.
  17247. Vmodeline-minor-mode-extent
  17248. Extent covering the minor mode modeline strings.
  17249. Vmodeline-buffer-id-left-map
  17250. Keymap consulted for mouse-clicks on the left half of the buffer-id string.
  17251. Vmodeline-buffer-id-right-map
  17252. Keymap consulted for mouse-clicks on the right half of the buffer-id string.
  17253. Vmodeline-buffer-id-extent
  17254. Extent covering the whole of the buffer-id string.
  17255. Vmodeline-buffer-id-left-extent
  17256. Extent covering the left half of the buffer-id string.
  17257. Vmodeline-buffer-id-right-extent
  17258. Extent covering the right half of the buffer-id string.
  17259. Vmodeline-buffer-identification
  17260. Modeline control for identifying the buffer being displayed.
  17261. Its default value is "XEmacs: %17b" (NOT!).  Major modes that edit things
  17262. other than ordinary files may change this (e.g. Info, Dired,...)
  17263. Vmodeline-process
  17264. Modeline control for displaying info on process status.
  17265. Normally nil in most modes, since there is no process to display.
  17266. Vmodeline-modified-map
  17267. Keymap consulted for mouse-clicks on the modeline-modified string.
  17268. Vmodeline-modified-extent
  17269. Extent covering the modeline-modified string.
  17270. Vmodeline-modified
  17271. Modeline control for displaying whether current buffer is modified.
  17272. Vmodeline-narrowed-map
  17273. Keymap consulted for mouse-clicks on the modeline-narrowed string.
  17274. Vmodeline-narrowed-extent
  17275. Extent covering the modeline-narrowed string.
  17276. Fmodeline-toggle-read-only
  17277. Change whether this buffer is visiting its file read-only.
  17278. With arg, set read-only iff arg is positive.
  17279. This function is designed to be called when the read-only indicator on the
  17280. modeline is clicked.  It will call `vc-toggle-read-only' if available,
  17281. otherwise it will call the usual `toggle-read-only'.
  17282. Vcommand-line-processed
  17283. t once command line has been processed
  17284. Vinhibit-startup-message
  17285. *Non-nil inhibits the initial startup message.
  17286. This is for use in your personal init file, once you are familiar
  17287. with the contents of the startup message.
  17288. Vinhibit-default-init
  17289. *Non-nil inhibits loading the `default' library.
  17290. Vcommand-line-args-left
  17291. List of command-line args not yet processed.
  17292. Vcommand-line-default-directory
  17293. Default directory to use for command line arguments.
  17294. This is normally copied from `default-directory' when XEmacs starts.
  17295. Vbefore-init-hook
  17296. Functions to call after handling urgent options but before init files.
  17297. The frame system uses this to open frames to display messages while
  17298. XEmacs loads the user's initialization file.
  17299. Vafter-init-hook
  17300. *Functions to call after loading the init file (`~/.emacs').
  17301. The call is not protected by a condition-case, so you can set `debug-on-error'
  17302. in `.emacs', and put all the actual code on `after-init-hook'.
  17303. Vterm-setup-hook
  17304. *Functions to be called after loading terminal-specific Lisp code.
  17305. See `run-hooks'.  This variable exists for users to set, so as to
  17306. override the definitions made by the terminal-specific file.  XEmacs
  17307. never sets this variable itself.
  17308. Vkeyboard-type
  17309. The brand of keyboard you are using.
  17310. This variable is used to define the proper function and keypad keys
  17311. for use under X.  It is used in a fashion analogous to the environment
  17312. value TERM.
  17313. Vwindow-setup-hook
  17314. Normal hook run to initialize window system display.
  17315. XEmacs runs this hook after processing the command line arguments and loading
  17316. the user's init file.
  17317. Vinitial-major-mode
  17318. Major mode command symbol to use for the initial *scratch* buffer.
  17319. Vinit-file-user
  17320. Identity of user whose `~/.emacs' file is or was read.
  17321. The value is nil if no init file is being used; otherwise, it may be either
  17322. the null string, meaning that the init file was taken from the user that
  17323. originally logged in, or it may be a string containing a user's name.
  17324.  
  17325. In either of the latter cases, `(concat "~" init-file-user "/")'
  17326. evaluates to the name of the directory where the `.emacs.el' file was
  17327. looked for.
  17328.  
  17329. Setting `init-file-user' does not prevent Emacs from loading
  17330. `site-start.el'.  The only way to do that is to use `--no-site-file'.
  17331. Vsite-start-file
  17332. File containing site-wide run-time initializations.
  17333. This file is loaded at run-time before `~/.xemacs/init.el'.  It
  17334. contains inits that need to be in place for the entire site, but
  17335. which, due to their higher incidence of change, don't make sense to
  17336. load into XEmacs' dumped image.  Thus, the run-time load order is:
  17337.  
  17338.   1. file described in this variable, if non-nil;
  17339.   2. `~/.xemacs/init.el';
  17340.   3. `/path/to/xemacs/lisp/default.el'.
  17341.  
  17342. Don't use the `site-start.el' file for things some users may not like.
  17343. Put them in `default.el' instead, so that users can more easily
  17344. override them.  Users can prevent loading `default.el' with the `-q'
  17345. option or by setting `inhibit-default-init' in their own init files,
  17346. but inhibiting `site-start.el' requires `--no-site-file', which
  17347. is less convenient.
  17348. Vmail-host-address
  17349. *Name of this machine, for purposes of naming users.
  17350. Vuser-mail-address
  17351. *Full mailing address of this user.
  17352. This is initialized based on `mail-host-address',
  17353. after your init file is read, in case it sets `mail-host-address'.
  17354. Vauto-save-list-file-prefix
  17355. Prefix for generating auto-save-list-file-name.
  17356. Emacs's pid and the system name will be appended to
  17357. this prefix to create a unique file name.
  17358. Vinit-file-loaded
  17359. True after the user's init file has been loaded (or suppressed with -q).
  17360. This will be true when `after-init-hook' is run and at all times
  17361. after, and will not be true at any time before.
  17362. Vcommand-switch-alist
  17363. Alist of command-line switches.
  17364. Elements look like (SWITCH-STRING . HANDLER-FUNCTION).
  17365. HANDLER-FUNCTION receives switch name as sole arg;
  17366. remaining command-line args are in the variable `command-line-args-left'.
  17367. Fcommand-line-do-help
  17368. Print the XEmacs usage message and exit.
  17369. Fcommand-line-do-funcall
  17370. Invoke the named lisp function with no arguments.
  17371. <function>
  17372. Fcommand-line-do-eval
  17373. Evaluate the lisp form.  Quote it carefully.
  17374. <form>
  17375. Fcommand-line-do-load
  17376. Load the named file of Lisp code into XEmacs.
  17377. <file>
  17378. Fcommand-line-do-insert
  17379. Insert file into the current buffer.
  17380. <file>
  17381. Fcommand-line-do-kill
  17382. Exit XEmacs.
  17383. Fcommand-line-do-version
  17384. Print version info and exit.
  17385. Fearly-error-handler
  17386. You should probably not be using this.
  17387. Vinitial-scratch-message
  17388. Initial message displayed in *scratch* buffer at startup.
  17389. If this is nil, no message will be displayed.
  17390. Vuser-init-directory
  17391. Directory where user initialization and user-installed packages may go.
  17392. Note that `~' is automatically prepended to this whereever it is used.
  17393. Fload-user-init-file
  17394. This function actually reads the init files.
  17395. In XEmacs 20.3 this function only looks at .emacs.  In XEmacs 20.4 this
  17396. function will first try .xemacs/init, then try .emacs, but only load one
  17397. of the two.
  17398. Fload-options-file
  17399. Load the file of saved options (from the Options menu) called FILENAME.
  17400. Currently this does nothing but call `load', but it might be redefined
  17401. in the future to support automatically converting older options files to
  17402. a new format, when variables have changed, etc.
  17403. Vstartup-presentation-hack-keymap
  17404. Putting yesterday in the future tomorrow.
  17405. Fcopy-from-above-command
  17406. Copy characters from previous nonblank line, starting just above point.
  17407. Copy ARG characters, but not past the end of that line.
  17408. If no argument given, copy the entire rest of the line.
  17409. The characters copied are inserted in the buffer before point.
  17410. Vhelp-map
  17411. Keymap for characters following the Help key.
  17412. Fhyperbole
  17413. Hyperbole info manager menus.
  17414. Ffinder-by-keyword
  17415. Find packages matching a given keyword.
  17416. Fhelp-mode
  17417. Major mode for viewing help text.
  17418. Entry to this mode runs the normal hook `help-mode-hook'.
  17419. Commands:
  17420. \{help-mode-map}
  17421. Fdescribe-function-at-point
  17422. Describe directly the function at point in the other window.
  17423. Fdescribe-variable-at-point
  17424. Describe directly the variable at point in the other window.
  17425. Fhelp-next-symbol
  17426. Move point to the next quoted symbol.
  17427. Fhelp-prev-symbol
  17428. Move point to the previous quoted symbol.
  17429. Fhelp-mode-quit
  17430. Exits from help mode, possibly restoring the previous window configuration.
  17431. Bury the help buffer to the end of the buffer list.
  17432. Fkey-or-menu-binding
  17433. Return the command invoked by KEY.
  17434. Like `key-binding', but handles menu events and toolbar presses correctly.
  17435. KEY is any value returned by `next-command-event'.
  17436. MENU-FLAG is a symbol that should be set to T if KEY is a menu event,
  17437.  or NIL otherwise
  17438. Fdescribe-key-briefly
  17439. Print the name of the function KEY invokes.  KEY is a string.
  17440. Fprint-help-return-message
  17441. Display or return message saying how to restore windows after help command.
  17442. Computes a message and applies the optional argument FUNCTION to it.
  17443. If FUNCTION is nil, applies `message' to it, thus printing it.
  17444. Fdescribe-key
  17445. Display documentation of the function invoked by KEY.
  17446. KEY is a string, or vector of events.
  17447. When called interactively, KEY may also be a menu selection.
  17448. Fdescribe-mode
  17449. Display documentation of current major mode and minor modes.
  17450. For this to work correctly for a minor mode, the mode's indicator variable
  17451. (listed in `minor-mode-alist') must also be a function whose documentation
  17452. describes the minor mode.
  17453. Fdescribe-distribution
  17454. Display info on how to obtain the latest version of XEmacs.
  17455. Fdescribe-beta
  17456. Display info on how to deal with Beta versions of XEmacs.
  17457. Fdescribe-copying
  17458. Display info on how you may redistribute copies of XEmacs.
  17459. Fdescribe-pointer
  17460. Show a list of all defined mouse buttons, and their definitions.
  17461. Fdescribe-project
  17462. Display info on the GNU project.
  17463. Fdescribe-no-warranty
  17464. Display info on all the kinds of warranty XEmacs does NOT have.
  17465. Fdescribe-bindings
  17466. Show a list of all defined keys, and their definitions.
  17467. The list is put in a buffer, which is displayed.
  17468. If the optional argument PREFIX is supplied, only commands which
  17469. start with that sequence of keys are described.
  17470. If the second argument (prefix arg, interactively) is non-null
  17471. then only the mouse bindings are displayed.
  17472. Fdescribe-prefix-bindings
  17473. Describe the bindings of the prefix used to reach this command.
  17474. The prefix described consists of all but the last event
  17475. of the key sequence that ran this command.
  17476. Fview-emacs-news
  17477. Display info on recent changes to XEmacs.
  17478. Fxemacs-www-page
  17479. Go to the XEmacs World Wide Web page.
  17480. Fxemacs-www-faq
  17481. View the latest and greatest XEmacs FAQ using the World Wide Web.
  17482. Fxemacs-local-faq
  17483. View the local copy of the XEmacs FAQ.
  17484. If you have access to the World Wide Web, you should use `xemacs-www-faq'
  17485. instead, to ensure that you get the most up-to-date information.
  17486. Fview-lossage
  17487. Display recent input keystrokes and recent minibuffer messages.
  17488. The number of keys shown is controlled by `view-lossage-key-count'.
  17489. The number of messages shown is controlled by `view-lossage-message-count'.
  17490. Fhelp-for-help
  17491. You have typed \[help-for-help], the help character.  Type a Help option:
  17492. (Use SPC or DEL to scroll through this text.  Type \<help-map>\[help-quit] to exit the Help command.)
  17493.  
  17494. \[hyper-apropos]    Type a substring; it shows a hypertext list of
  17495.         functions and variables that contain that substring.
  17496.     See also the `apropos' command.
  17497. \[command-apropos]    Type a substring; it shows a list of commands
  17498.         (interactively callable functions) that contain that substring.
  17499. \[describe-bindings]    Table of all key bindings.
  17500. \[describe-key-briefly]    Type a command key sequence;
  17501.         it displays the function name that sequence runs.
  17502. \[Info-goto-emacs-command-node]    Type a function name; it displays the Info node for that command.
  17503. \[describe-function]    Type a function name; it shows its documentation.
  17504. \[Info-elisp-ref]    Type a function name; it jumps to the full documentation
  17505.     in the XEmacs Lisp Programmer's Manual.
  17506. \[xemacs-local-faq]    Local copy of the XEmacs FAQ.
  17507. \[info]    Info documentation reader.
  17508. \[Info-query]    Type an Info file name; it displays it in Info reader.
  17509. \[describe-key]    Type a command key sequence;
  17510.         it displays the documentation for the command bound to that key.
  17511. \[Info-goto-emacs-key-command-node]    Type a command key sequence;
  17512.         it displays the Info node for the command bound to that key.
  17513. \[view-lossage]    Recent input keystrokes and minibuffer messages.
  17514. \[describe-mode]    Documentation of current major and minor modes.
  17515. \[view-emacs-news]    News of recent XEmacs changes.
  17516. \[finder-by-keyword]    Type a topic keyword; it finds matching packages.
  17517. \[describe-pointer]    Table of all mouse-button bindings.
  17518. \[describe-syntax]    Contents of syntax table with explanations.
  17519. \[help-with-tutorial]    XEmacs learn-by-doing tutorial.
  17520. \[describe-variable]    Type a variable name; it displays its documentation and value.
  17521. \[where-is]    Type a command name; it displays which keystrokes invoke that command.
  17522. \[describe-distribution]    XEmacs ordering information.
  17523. \[describe-no-warranty]    Information on absence of warranty for XEmacs.
  17524. \[describe-copying]      XEmacs copying permission (General Public License).
  17525. Ffunction-called-at-point
  17526. Return the function which is called by the list containing point.
  17527. If that gives no function, return the function whose name is around point.
  17528. If that doesn't give a function, return nil.
  17529. Ffunction-at-point
  17530. Return the function whose name is around point.
  17531. If that gives no function, return the function which is called by the
  17532. list containing point.  If that doesn't give a function, return nil.
  17533. Fdescribe-function
  17534. Display the full documentation of FUNCTION (a symbol).
  17535. When run interactively, it defaults to any function found by
  17536. `function-at-point'.
  17537. Ffunction-obsolete-p
  17538. Return non-nil if FUNCTION is obsolete.
  17539. Ffunction-obsoleteness-doc
  17540. If FUNCTION is obsolete, return a string describing this.
  17541. Ffunction-compatible-p
  17542. Return non-nil if FUNCTION is present for Emacs compatibility.
  17543. Ffunction-compatibility-doc
  17544. If FUNCTION is Emacs compatible, return a string describing this.
  17545. Fvariable-obsolete-p
  17546. Return non-nil if VARIABLE is obsolete.
  17547. Fvariable-obsoleteness-doc
  17548. If VARIABLE is obsolete, return a string describing this.
  17549. Fvariable-compatible-p
  17550. Return non-nil if VARIABLE is Emacs compatible.
  17551. Fvariable-compatibility-doc
  17552. If VARIABLE is Emacs compatible, return a string describing this.
  17553. Fbuilt-in-variable-doc
  17554. Return a string describing whether VARIABLE is built-in.
  17555. Fdescribe-variable
  17556. Display the full documentation of VARIABLE (a symbol).
  17557. Fsorted-key-descriptions
  17558. Sort and separate the key descriptions for KEYS.
  17559. The sorting is done by length (shortest bindings first), and the bindings
  17560. are separated with SEPARATOR (", " by default).
  17561. Fwhere-is
  17562. Print message listing key sequences that invoke specified command.
  17563. Argument is a command definition, usually a symbol with a function definition.
  17564. When run interactively, it defaults to any function found by
  17565. `function-at-point'.
  17566. Fdescribe-syntax
  17567. Describe the syntax specifications in the syntax table.
  17568. The descriptions are inserted in a buffer, which is then displayed.
  17569. Flist-processes
  17570. Display a list of all processes.
  17571. (Any processes listed as Exited or Signaled are actually eliminated
  17572. after the listing is made.)
  17573. Vbackup-inhibited
  17574. Non-nil means don't make a backup, regardless of the other parameters.
  17575. This variable is intended for use by making it local to a buffer.
  17576. But it is local only if you make it local.
  17577. Vbackup-enable-predicate
  17578. Predicate that looks at a file name and decides whether to make backups.
  17579. Called with an absolute file name as argument, it returns t to enable backup.
  17580. Vbuffer-file-number
  17581. The device number and file number of the file visited in the current buffer.
  17582. The value is a list of the form (FILENUM DEVNUM).
  17583. This pair of numbers uniquely identifies the file.
  17584. If the buffer is visiting a new file, the value is nil.
  17585. Vbuffer-file-numbers-unique
  17586. Non-nil means that buffer-file-number uniquely identifies files.
  17587. Vfind-file-not-found-hooks
  17588. List of functions to be called for `find-file' on nonexistent file.
  17589. These functions are called as soon as the error is detected.
  17590. `buffer-file-name' is already set up.
  17591. The functions are called in the order given until one of them returns non-nil.
  17592. Vfind-file-hooks
  17593. List of functions to be called after a buffer is loaded from a file.
  17594. The buffer's local variables (if any) will have been processed before the
  17595. functions are called.
  17596. Vwrite-file-hooks
  17597. List of functions to be called before writing out a buffer to a file.
  17598. If one of them returns non-nil, the file is considered already written
  17599. and the rest are not called.
  17600. These hooks are considered to pertain to the visited file.
  17601. So this list is cleared if you change the visited file name.
  17602. See also `write-contents-hooks' and `continue-save-buffer'.
  17603. Vlocal-write-file-hooks
  17604. Just like `write-file-hooks', except intended for per-buffer use.
  17605. The functions in this list are called before the ones in
  17606. `write-file-hooks'.
  17607.  
  17608. This variable is meant to be used for hooks that have to do with a
  17609. particular visited file.  Therefore, it is a permanent local, so that
  17610. changing the major mode does not clear it.  However, calling
  17611. `set-visited-file-name' does clear it.
  17612. Vafter-set-visited-file-name-hooks
  17613. List of functions to be called after \[set-visited-file-name]
  17614. or during \[write-file].
  17615. You can use this hook to restore local values of write-file-hooks,
  17616. after-save-hook, and revert-buffer-function, which pertain
  17617. to a specific file and therefore are normally killed by a rename.
  17618. Put hooks pertaining to the buffer contents on write-contents-hooks
  17619. and revert-buffer-insert-file-contents-function.
  17620. Vwrite-contents-hooks
  17621. List of functions to be called before writing out a buffer to a file.
  17622. If one of them returns non-nil, the file is considered already written
  17623. and the rest are not called.
  17624. These hooks are considered to pertain to the buffer's contents,
  17625. not to the particular visited file; thus, `set-visited-file-name' does
  17626. not clear this variable, but changing the major mode does clear it.
  17627. See also `write-file-hooks' and `continue-save-buffer'.
  17628. Vwrite-file-data-hooks
  17629. List of functions to be called to put the bytes on disk.  
  17630. These functions receive the name of the file to write to as argument.
  17631. The default behavior is to call 
  17632.   (write-region (point-min) (point-max) filename nil t)
  17633. If one of them returns non-nil, the file is considered already written
  17634. and the rest are not called.
  17635. These hooks are considered to pertain to the visited file.
  17636. So this list is cleared if you change the visited file name.
  17637. See also `write-file-hooks'.
  17638. Fconvert-standard-filename
  17639. Convert a standard file's name to something suitable for the current OS.
  17640. This function's standard definition is trivial; it just returns the argument.
  17641. However, on some systems, the function is redefined
  17642. with a definition that really does change some file names.
  17643. Fpwd
  17644. Show the current default directory.
  17645. Vcd-path
  17646. Value of the CDPATH environment variable, as a list.
  17647. Not actually set up until the first time you use it.
  17648. Vpath-separator
  17649. Character used to separate concatenated paths.
  17650. Fparse-colon-path
  17651. Explode a colon-separated list of paths into a string list.
  17652. Fcd-absolute
  17653. Change current directory to given absolute file name DIR.
  17654. Fcd
  17655. Make DIR become the current buffer's default directory.
  17656. If your environment includes a `CDPATH' variable, try each one of that
  17657. colon-separated list of directories when resolving a relative directory name.
  17658. Fload-file
  17659. Load the Lisp file named FILE.
  17660. Ffile-local-copy
  17661. Copy the file FILE into a temporary file on this machine.
  17662. Returns the name of the local copy, or nil, if FILE is directly
  17663. accessible.
  17664. Fcompute-buffer-file-truename
  17665. Recomputes BUFFER's value of `buffer-file-truename'
  17666. based on the current value of `buffer-file-name'.
  17667. BUFFER defaults to the current buffer if unspecified.
  17668. Ffile-chase-links
  17669. Chase links in FILENAME until a name that is not a link.
  17670. Does not examine containing directories for links,
  17671. unlike `file-truename'.
  17672. Fswitch-to-other-buffer
  17673. Switch to the previous buffer.  With a numeric arg, n, switch to the nth
  17674. most recent buffer.  With an arg of 0, buries the current buffer at the
  17675. bottom of the buffer stack.
  17676. Fswitch-to-buffer-other-window
  17677. Select buffer BUFFER in another window.
  17678. Fswitch-to-buffer-other-frame
  17679. Switch to buffer BUFFER in a newly-created frame.
  17680. Ffind-file
  17681. Edit file FILENAME.
  17682. Switch to a buffer visiting file FILENAME,
  17683. creating one if none already exists.
  17684. Under XEmacs/Mule, optional second argument specifies the
  17685. coding system to use when decoding the file.  Interactively,
  17686. with a prefix argument, you will be prompted for the coding system.
  17687. Ffind-file-other-window
  17688. Edit file FILENAME, in another window.
  17689. May create a new window, or reuse an existing one.
  17690. See the function `display-buffer'.
  17691. Under XEmacs/Mule, optional second argument specifies the
  17692. coding system to use when decoding the file.  Interactively,
  17693. with a prefix argument, you will be prompted for the coding system.
  17694. Ffind-file-other-frame
  17695. Edit file FILENAME, in a newly-created frame.
  17696. Under XEmacs/Mule, optional second argument specifies the
  17697. coding system to use when decoding the file.  Interactively,
  17698. with a prefix argument, you will be prompted for the coding system.
  17699. Ffind-file-read-only
  17700. Edit file FILENAME but don't allow changes.
  17701. Like \[find-file] but marks buffer as read-only.
  17702. Use \[toggle-read-only] to permit editing.
  17703. Under XEmacs/Mule, optional second argument specifies the
  17704. coding system to use when decoding the file.  Interactively,
  17705. with a prefix argument, you will be prompted for the coding system.
  17706. Ffind-file-read-only-other-window
  17707. Edit file FILENAME in another window but don't allow changes.
  17708. Like \[find-file-other-window] but marks buffer as read-only.
  17709. Use \[toggle-read-only] to permit editing.
  17710. Under XEmacs/Mule, optional second argument specifies the
  17711. coding system to use when decoding the file.  Interactively,
  17712. with a prefix argument, you will be prompted for the coding system.
  17713. Ffind-file-read-only-other-frame
  17714. Edit file FILENAME in another frame but don't allow changes.
  17715. Like \[find-file-other-frame] but marks buffer as read-only.
  17716. Use \[toggle-read-only] to permit editing.
  17717. Under XEmacs/Mule, optional second argument specifies the
  17718. coding system to use when decoding the file.  Interactively,
  17719. with a prefix argument, you will be prompted for the coding system.
  17720. Ffind-alternate-file-other-window
  17721. Find file FILENAME as a replacement for the file in the next window.
  17722. This command does not select that window.
  17723. Under XEmacs/Mule, optional second argument specifies the
  17724. coding system to use when decoding the file.  Interactively,
  17725. with a prefix argument, you will be prompted for the coding system.
  17726. Ffind-alternate-file
  17727. Find file FILENAME, select its buffer, kill previous buffer.
  17728. If the current buffer now contains an empty file that you just visited
  17729. (presumably by mistake), use this command to visit the file you really want.
  17730. Under XEmacs/Mule, optional second argument specifies the
  17731. coding system to use when decoding the file.  Interactively,
  17732. with a prefix argument, you will be prompted for the coding system.
  17733. Fcreate-file-buffer
  17734. Create a suitably named buffer for visiting FILENAME, and return it.
  17735. FILENAME (sans directory) is used unchanged if that name is free;
  17736. otherwise a string <2> or <3> or ... is appended to get an unused name.
  17737. Fgenerate-new-buffer
  17738. Create and return a buffer with a name based on NAME.
  17739. Choose the buffer's name using `generate-new-buffer-name'.
  17740. Vabbreviated-home-dir
  17741. The user's homedir abbreviated according to `directory-abbrev-alist'.
  17742. Fabbreviate-file-name
  17743. Return a version of FILENAME shortened using `directory-abbrev-alist'.
  17744. See documentation of variable `directory-abbrev-alist' for more information.
  17745. If optional argument HACK-HOMEDIR is non-nil, then this also substitutes
  17746. "~" for the user's home directory.
  17747. Ffind-buffer-visiting
  17748. Return the buffer visiting file FILENAME (a string).
  17749. This is like `get-file-buffer', except that it checks for any buffer
  17750. visiting the same file, possibly under a different name.
  17751. If there is no such live buffer, return nil.
  17752. Finsert-file-contents-literally
  17753. Like `insert-file-contents', q.v., but only reads in the file.
  17754. A buffer may be modified in several ways after reading into the buffer due
  17755. to advanced Emacs features, such as file-name-handlers, format decoding,
  17756. find-file-hooks, etc.
  17757.   This function ensures that none of these modifications will take place.
  17758. Ffind-file-noselect
  17759. Read file FILENAME into a buffer and return the buffer.
  17760. If a buffer exists visiting FILENAME, return that one, but
  17761. verify that the file has not changed since visited or saved.
  17762. The buffer is not selected, just returned to the caller.
  17763. If NOWARN is non-nil, warning messages about several potential
  17764. problems will be suppressed.
  17765. Fafter-find-file
  17766. Called after finding a file and by the default revert function.
  17767. Sets buffer mode, parses local variables.
  17768. Optional args ERROR, WARN, and NOAUTO: ERROR non-nil means there was an
  17769. error in reading the file.  WARN non-nil means warn if there
  17770. exists an auto-save file more recent than the visited file.
  17771. NOAUTO means don't mess with auto-save mode.
  17772. Fourth arg AFTER-FIND-FILE-FROM-REVERT-BUFFER non-nil
  17773.  means this call was from `revert-buffer'.
  17774. Fifth arg NOMODES non-nil means don't alter the file's modes.
  17775. Finishes by calling the functions in `find-file-hooks'.
  17776. Fnormal-mode
  17777. Choose the major mode for this buffer automatically.
  17778. Also sets up any specified local variables of the file.
  17779. Uses the visited file name, the -*- line, and the local variables spec.
  17780.  
  17781. This function is called automatically from `find-file'.  In that case,
  17782. we may set up specified local variables depending on the value of
  17783. `enable-local-variables': if it is t, we do; if it is nil, we don't;
  17784. otherwise, we query.  `enable-local-variables' is ignored if you
  17785. run `normal-mode' explicitly.
  17786. Vauto-mode-alist
  17787. Alist of filename patterns vs. corresponding major mode functions.
  17788. Each element looks like (REGEXP . FUNCTION) or (REGEXP FUNCTION NON-NIL).
  17789. (NON-NIL stands for anything that is not nil; the value does not matter.)
  17790. Visiting a file whose name matches REGEXP specifies FUNCTION as the
  17791. mode function to use.  FUNCTION will be called, unless it is nil.
  17792.  
  17793. If the element has the form (REGEXP FUNCTION NON-NIL), then after
  17794. calling FUNCTION (if it's not nil), we delete the suffix that matched
  17795. REGEXP and search the list again for another match.
  17796. Vinterpreter-mode-alist
  17797. Alist mapping interpreter names to major modes.
  17798. This alist is used to guess the major mode of a file based on the
  17799. contents of the first line.  This line often contains something like:
  17800. #!/bin/sh
  17801. but may contain something more imaginative like
  17802. #! /bin/env python
  17803. or
  17804. eval 'exec perl -w -S $0 ${1+"$@"}'.
  17805.  
  17806. Each alist element looks like (INTERPRETER . MODE).
  17807. The car of each element is a regular expression which is compared
  17808. with the name of the interpreter specified in the first line.
  17809. If it matches, mode MODE is selected.
  17810. Vinhibit-first-line-modes-regexps
  17811. List of regexps; if one matches a file name, don't look for `-*-'.
  17812. Vinhibit-first-line-modes-suffixes
  17813. List of regexps for what to ignore, for `inhibit-first-line-modes-regexps'.
  17814. When checking `inhibit-first-line-modes-regexps', we first discard
  17815. from the end of the file name anything that matches one of these regexps.
  17816. Vuser-init-file
  17817. File name including directory of user's initialization file.
  17818. Fset-auto-mode
  17819. Select major mode appropriate for current buffer.
  17820. This checks for a -*- mode tag in the buffer's text,
  17821. compares the filename against the entries in `auto-mode-alist',
  17822. or checks the interpreter that runs this file against
  17823. `interpreter-mode-alist'.
  17824.  
  17825. It does not check for the `mode:' local variable in the
  17826. Local Variables section of the file; for that, use `hack-local-variables'.
  17827.  
  17828. If `enable-local-variables' is nil, this function does not check for a
  17829. -*- mode tag.
  17830. Vhack-local-variables-hook
  17831. Normal hook run after processing a file's local variables specs.
  17832. Major modes can use this to examine user-specified local variables
  17833. in order to initialize other data structure based on them.
  17834.  
  17835. This hook runs even if there were no local variables or if their
  17836. evaluation was suppressed.  See also `enable-local-variables' and
  17837. `enable-local-eval'.
  17838. Fhack-local-variables
  17839. Parse, and bind or evaluate as appropriate, any local variables
  17840. for current buffer.
  17841. Vignored-local-variables
  17842. Variables to be ignored in a file's local variable spec.
  17843. Fset-visited-file-name
  17844. Change name of file visited in current buffer to FILENAME.
  17845. The next time the buffer is saved it will go in the newly specified file.
  17846. nil or empty string as argument means make buffer not be visiting any file.
  17847. Remember to delete the initial contents of the minibuffer
  17848. if you wish to pass an empty string as the argument.
  17849. Fwrite-file
  17850. Write current buffer into file FILENAME.
  17851. Makes buffer visit that file, and marks it not modified.
  17852. If the buffer is already visiting a file, you can specify
  17853. a directory name as FILENAME, to write a file of the same
  17854. old name in that directory.
  17855. If optional second arg CONFIRM is non-nil,
  17856. ask for confirmation for overwriting an existing file.
  17857. Under XEmacs/Mule, optional third argument specifies the
  17858. coding system to use when encoding the file.  Interactively,
  17859. with a prefix argument, you will be prompted for the coding system.
  17860. Fbackup-buffer
  17861. Make a backup of the disk file visited by the current buffer, if appropriate.
  17862. This is normally done before saving the buffer the first time.
  17863. If the value is non-nil, it is the result of `file-modes' on the original file;
  17864. this means that the caller, after saving the buffer, should change the modes
  17865. of the new file to agree with the old modes.
  17866. Ffile-name-sans-versions
  17867. Return FILENAME sans backup versions or strings.
  17868. This is a separate procedure so your site-init or startup file can
  17869. redefine it.
  17870. If the optional argument KEEP-BACKUP-VERSION is non-nil,
  17871. we do not remove backup version numbers, only true file version numbers.
  17872. Ffile-ownership-preserved-p
  17873. Returns t if deleting FILE and rewriting it would preserve the owner.
  17874. Ffile-name-sans-extension
  17875. Return FILENAME sans final "extension".
  17876. The extension, in a file name, is the part that follows the last `.'.
  17877. Fmake-backup-file-name
  17878. Create the non-numeric backup file name for FILE.
  17879. This is a separate function so you can redefine it for customization.
  17880. Fbackup-file-name-p
  17881. Return non-nil if FILE is a backup file name (numeric or not).
  17882. This is a separate function so you can redefine it for customization.
  17883. You may need to redefine `file-name-sans-versions' as well.
  17884. Fbackup-extract-version
  17885. Given the name of a numeric backup file, return the backup number.
  17886. Uses the free variable `bv-length', whose value should be
  17887. the index in the name where the version number begins.
  17888. Ffind-backup-file-name
  17889. Find a file name for a backup file, and suggestions for deletions.
  17890. Value is a list whose car is the name for the backup file
  17891.  and whose cdr is a list of old versions to consider deleting now.
  17892. If the value is nil, don't make a backup.
  17893. Ffile-nlinks
  17894. Return number of names file FILENAME has.
  17895. Ffile-relative-name
  17896. Convert FILENAME to be relative to DIRECTORY (default: default-directory).
  17897. Fsave-buffer
  17898. Save current buffer in visited file if modified.  Versions described below.
  17899.  
  17900. By default, makes the previous version into a backup file
  17901.  if previously requested or if this is the first save.
  17902. With 1 or 3 \[universal-argument]'s, marks this version
  17903.  to become a backup when the next save is done.
  17904. With 2 or 3 \[universal-argument]'s,
  17905.  unconditionally makes the previous version into a backup file.
  17906. With argument of 0, never makes the previous version into a backup file.
  17907.  
  17908. If a file's name is FOO, the names of its numbered backup versions are
  17909.  FOO.~i~ for various integers i.  A non-numbered backup file is called FOO~.
  17910. Numeric backups (rather than FOO~) will be made if value of
  17911.  `version-control' is not the atom `never' and either there are already
  17912.  numeric versions of the file being backed up, or `version-control' is
  17913.  non-nil.
  17914. We don't want excessive versions piling up, so there are variables
  17915.  `kept-old-versions', which tells XEmacs how many oldest versions to keep,
  17916.  and `kept-new-versions', which tells how many newest versions to keep.
  17917.  Defaults are 2 old versions and 2 new.
  17918. `dired-kept-versions' controls dired's clean-directory (.) command.
  17919. If `delete-old-versions' is nil, system will query user
  17920.  before trimming versions.  Otherwise it does it silently.
  17921. Fdelete-auto-save-file-if-necessary
  17922. Delete auto-save file for current buffer if `delete-auto-save-files' is t.
  17923. Normally delete only if the file was written by this XEmacs
  17924. since the last real save, but optional arg FORCE non-nil means delete anyway.
  17925. Vafter-save-hook
  17926. Normal hook that is run after a buffer is saved to its file.
  17927. These hooks are considered to pertain to the visited file.
  17928. So this list is cleared if you change the visited file name.
  17929. Fbasic-save-buffer
  17930. Save the current buffer in its visited file, if it has been modified.
  17931. After saving the buffer, run `after-save-hook'.
  17932. Fcontinue-save-buffer
  17933. Provide a clean way for a write-file-hook to wrap AROUND
  17934. the execution of the remaining hooks and writing to disk.
  17935. Do not call this function except from a functions
  17936. on the write-file-hooks or write-contents-hooks list.
  17937. A hook that calls this function must return non-nil,
  17938. to signal completion to its caller.  continue-save-buffer
  17939. always returns non-nil.
  17940. Fsave-some-buffers
  17941. Save some modified file-visiting buffers.  Asks user about each one.
  17942. Optional argument (the prefix) non-nil means save all with no questions.
  17943. Optional second argument EXITING means ask about certain non-file buffers
  17944.  as well as about file buffers.
  17945. Fnot-modified
  17946. Mark current buffer as unmodified, not needing to be saved.
  17947. With prefix arg, mark buffer as modified, so \[save-buffer] will save.
  17948.  
  17949. It is not a good idea to use this function in Lisp programs, because it
  17950. prints a message in the minibuffer.  Instead, use `set-buffer-modified-p'.
  17951. Ftoggle-read-only
  17952. Change whether this buffer is visiting its file read-only.
  17953. With arg, set read-only iff arg is positive.
  17954. Finsert-file
  17955. Insert contents of file FILENAME into buffer after point.
  17956. Set mark after the inserted text.
  17957.  
  17958. Under XEmacs/Mule, optional second argument specifies the
  17959. coding system to use when decoding the file.  Interactively,
  17960. with a prefix argument, you will be prompted for the coding system.
  17961.  
  17962. This function is meant for the user to run interactively.
  17963. Don't call it from programs!  Use `insert-file-contents' instead.
  17964. (Its calling sequence is different; see its documentation).
  17965. Fappend-to-file
  17966. Append the contents of the region to the end of file FILENAME.
  17967. When called from a function, expects three arguments,
  17968. START, END and FILENAME.  START and END are buffer positions
  17969. saying what text to write.
  17970. Under XEmacs/Mule, optional fourth argument specifies the
  17971. coding system to use when encoding the file.  Interactively,
  17972. with a prefix argument, you will be prompted for the coding system.
  17973. Ffile-newest-backup
  17974. Return most recent backup file for FILENAME or nil if no backups exist.
  17975. Frename-uniquely
  17976. Rename current buffer to a similar name not already taken.
  17977. This function is useful for creating multiple shell process buffers
  17978. or multiple mail buffers, etc.
  17979. Fmake-directory-path
  17980. Create all the directories along path that don't exist yet.
  17981. Fmake-directory
  17982. Create the directory DIR and any nonexistent parent dirs.
  17983. Interactively, the default choice of directory to create
  17984. is the current default directory for file names.
  17985. That is useful when you have visited a file in a nonexistent directory.
  17986.  
  17987. Noninteractively, the second (optional) argument PARENTS says whether
  17988. to create parent directories if they don't exist.
  17989. Vrevert-buffer-function
  17990. Function to use to revert this buffer, or nil to do the default.
  17991. The function receives two arguments IGNORE-AUTO and NOCONFIRM,
  17992. which are the arguments that `revert-buffer' received.
  17993. Vrevert-buffer-insert-file-contents-function
  17994. Function to use to insert contents when reverting this buffer.
  17995. Gets two args, first the nominal file name to use,
  17996. and second, t if reading the auto-save file.
  17997. Vbefore-revert-hook
  17998. Normal hook for `revert-buffer' to run before reverting.
  17999. If `revert-buffer-function' is used to override the normal revert
  18000. mechanism, this hook is not used.
  18001. Vafter-revert-hook
  18002. Normal hook for `revert-buffer' to run after reverting.
  18003. Note that the hook value that it runs is the value that was in effect
  18004. before reverting; that makes a difference if you have buffer-local
  18005. hook functions.
  18006.  
  18007. If `revert-buffer-function' is used to override the normal revert
  18008. mechanism, this hook is not used.
  18009. Vrevert-buffer-internal-hook
  18010. Don't use this.
  18011. Frevert-buffer
  18012. Replace the buffer text with the text of the visited file on disk.
  18013. This undoes all changes since the file was visited or saved.
  18014. With a prefix argument, offer to revert from latest auto-save file, if
  18015. that is more recent than the visited file.
  18016.  
  18017. This command also works for special buffers that contain text which
  18018. doesn't come from a file, but reflects some other data base instead:
  18019. for example, Dired buffers and buffer-list buffers.  In these cases,
  18020. it reconstructs the buffer contents from the appropriate data base.
  18021.  
  18022. When called from Lisp, the first argument is IGNORE-AUTO; only offer
  18023. to revert from the auto-save file when this is nil.  Note that the
  18024. sense of this argument is the reverse of the prefix argument, for the
  18025. sake of backward compatibility.  IGNORE-AUTO is optional, defaulting
  18026. to nil.
  18027.  
  18028. Optional second argument NOCONFIRM means don't ask for confirmation at
  18029. all.
  18030.  
  18031. Optional third argument PRESERVE-MODES non-nil means don't alter
  18032. the files modes.  Normally we reinitialize them using `normal-mode'.
  18033.  
  18034. If the value of `revert-buffer-function' is non-nil, it is called to
  18035. do the work.
  18036.  
  18037. The default revert function runs the hook `before-revert-hook' at the
  18038. beginning and `after-revert-hook' at the end.
  18039. Frecover-file
  18040. Visit file FILE, but get contents from its last auto-save file.
  18041. Frecover-session
  18042. Recover auto save files from a previous Emacs session.
  18043. This command first displays a Dired buffer showing you the
  18044. previous sessions that you could recover from.
  18045. To choose one, move point to the proper line and then type C-c C-c.
  18046. Then you'll be asked about a number of files to recover.
  18047. Frecover-session-finish
  18048. Choose one saved session to recover auto-save files from.
  18049. This command is used in the special Dired buffer created by
  18050. \[recover-session].
  18051. Fkill-some-buffers
  18052. For each buffer, ask whether to kill it.
  18053. Fauto-save-mode
  18054. Toggle auto-saving of contents of current buffer.
  18055. With prefix argument ARG, turn auto-saving on if positive, else off.
  18056. Frename-auto-save-file
  18057. Adjust current buffer's auto save file name for current conditions.
  18058. Also rename any existing auto save file, if it was made in this session.
  18059. Fmake-auto-save-file-name
  18060. Return file name to use for auto-saves of current buffer.
  18061. Does not consider `auto-save-visited-file-name' as that variable is checked
  18062. before calling this function.  You can redefine this for customization.
  18063. See also `auto-save-file-name-p'.
  18064. Fauto-save-file-name-p
  18065. Return non-nil if FILENAME can be yielded by `make-auto-save-file-name'.
  18066. FILENAME should lack slashes.
  18067. You can redefine this for customization.
  18068. Flist-directory
  18069. Display a list of files in or matching DIRNAME, a la `ls'.
  18070. DIRNAME is globbed by the shell if necessary.
  18071. Prefix arg (second arg if noninteractive) means supply -l switch to `ls'.
  18072. Actions controlled by variables `list-directory-brief-switches'
  18073. and `list-directory-verbose-switches'.
  18074. Vinsert-directory-program
  18075. Absolute or relative name of the `ls' program used by `insert-directory'.
  18076. Finsert-directory
  18077. Insert directory listing for FILE, formatted according to SWITCHES.
  18078. Leaves point after the inserted text.
  18079. SWITCHES may be a string of options, or a list of strings.
  18080. Optional third arg WILDCARD means treat FILE as shell wildcard.
  18081. Optional fourth arg FULL-DIRECTORY-P means file is a directory and
  18082. switches do not contain `d', so that a full listing is expected.
  18083.  
  18084. This works by running a directory listing program
  18085. whose name is in the variable `insert-directory-program'.
  18086. If WILDCARD, it also runs the shell specified by `shell-file-name'.
  18087. Vkill-emacs-query-functions
  18088. Functions to call with no arguments to query about killing XEmacs.
  18089. If any of these functions returns nil, killing Emacs is cancelled.
  18090. `save-buffers-kill-emacs' (\[save-buffers-kill-emacs]) calls these functions,
  18091. but `kill-emacs', the low level primitive, does not.
  18092. See also `kill-emacs-hook'.
  18093. Fsave-buffers-kill-emacs
  18094. Offer to save each buffer, then kill this XEmacs process.
  18095. With prefix arg, silently save all file-visiting buffers, then kill.
  18096. Fsymlink-expand-file-name
  18097. If FILENAME is a symlink, return its non-symlink equivalent.
  18098. Unlike `file-truename', this doesn't chase symlinks in directory
  18099. components of the file or expand a relative pathname into an
  18100. absolute one.
  18101. Ffile-remote-p
  18102. Test whether FILE-NAME is looked for on a remote system.
  18103. Flibrary-all-completions
  18104. Return all completions for FILE in any directory on SEARCH-PATH.
  18105. If optional third argument FULL is non-nil, returned pathnames should be 
  18106.   absolute rather than relative to some directory on the SEARCH-PATH.
  18107. If optional fourth argument FAST is non-nil, don't sort the completions,
  18108.   or remove duplicates.
  18109. Fprogn-with-message
  18110. (progn-with-message MESSAGE FORMS ...)
  18111. Display MESSAGE and evaluate FORMS, returning value of the last one.
  18112. Vlib-complete:cache
  18113. Used within read-library and read-library-internal to prevent 
  18114. costly repeated calls to library-all-completions.
  18115. Format is a list of lists of the form
  18116.  
  18117.     ([<path> <subdir>] <cache-record> <cache-record> ...)
  18118.  
  18119. where each <cache-record> has the form
  18120.  
  18121.    (<root> <modtimes> <completion-table>)
  18122. Flib-complete:better-root
  18123. Return non-nil if ROOT1 is a superset of ROOT2.
  18124. Vlib-complete:max-cache-size
  18125. *Maximum number of search paths which are cached.
  18126. Fread-library-internal
  18127. Don't call this.
  18128. Fread-library
  18129. Read library name, prompting with PROMPT and completing in directories
  18130. from SEARCH-PATH.  A nil in the search path represents the current
  18131. directory.  Completions for a given search-path are cached, with the
  18132. cache being invalidated whenever one of the directories on the path changes.
  18133. Default to DEFAULT if user enters a null string.
  18134. Optional fourth arg MUST-MATCH non-nil means require existing file's name.
  18135.   Non-nil and non-t means also require confirmation after completion.
  18136. Optional fifth argument FULL non-nil causes a full pathname, rather than a 
  18137.   relative pathname, to be returned.  Note that FULL implies MUST-MATCH.
  18138. Optional sixth argument FILTER can be used to provide a function to
  18139.   filter the completions.  This function is passed the filename, and should
  18140.   return a transformed filename (possibly a null transformation) or nil, 
  18141.   indicating that the filename should not be included in the completions.
  18142. Fget-library-path
  18143. Front end to read-library
  18144. Fload-library
  18145. Load the library named LIBRARY.
  18146. This is an interface to the function `load'.
  18147. Ffind-library
  18148. Find and edit the source for the library named LIBRARY.
  18149. The extension of the LIBRARY must be omitted.
  18150. Under XEmacs/Mule, the optional second argument specifies the
  18151. coding system to use when decoding the file.  Interactively,
  18152. with a prefix argument, you will be prompted for the coding system.
  18153. Ffind-library-other-window
  18154. Load the library named LIBRARY in another window.
  18155. Under XEmacs/Mule, the optional second argument specifies the
  18156. coding system to use when decoding the file.  Interactively,
  18157. with a prefix argument, you will be prompted for the coding system.
  18158. Ffind-library-other-frame
  18159. Load the library named LIBRARY in a newly-created frame.
  18160. Under XEmacs/Mule, the optional second argument specifies the
  18161. coding system to use when decoding the file.  Interactively,
  18162. with a prefix argument, you will be prompted for the coding system.
  18163. Vformat-alist
  18164. List of information about understood file formats.
  18165. Elements are of the form (NAME DOC-STR REGEXP FROM-FN TO-FN MODIFY MODE-FN).
  18166.  
  18167. NAME    is a symbol, which is stored in `buffer-file-format'.
  18168.  
  18169. DOC-STR should be a single line providing more information about the
  18170.         format.  It is currently unused, but in the future will be shown to
  18171.         the user if they ask for more information.
  18172.  
  18173. REGEXP  is a regular expression to match against the beginning of the file;
  18174.         it should match only files in that format.
  18175.  
  18176. FROM-FN is called to decode files in that format; it gets two args, BEGIN 
  18177.         and END, and can make any modifications it likes, returning the new
  18178.         end.  It must make sure that the beginning of the file no longer
  18179.         matches REGEXP, or else it will get called again.
  18180.     Alternatively, FROM-FN can be a string, which specifies a shell command
  18181.     (including options) to be used as a filter to perform the conversion.
  18182.  
  18183. TO-FN   is called to encode a region into that format; it is passed three
  18184.         arguments: BEGIN, END, and BUFFER.  BUFFER is the original buffer that
  18185.         the data being written came from, which the function could use, for
  18186.         example, to find the values of local variables.  TO-FN should either
  18187.         return a list of annotations like `write-region-annotate-functions',
  18188.         or modify the region and return the new end.
  18189.     Alternatively, TO-FN can be a string, which specifies a shell command
  18190.     (including options) to be used as a filter to perform the conversion.
  18191.  
  18192. MODIFY, if non-nil, means the TO-FN wants to modify the region.  If nil,
  18193.         TO-FN will not make any changes but will instead return a list of
  18194.         annotations. 
  18195.  
  18196. MODE-FN, if specified, is called when visiting a file with that format.
  18197. Fformat-encode-run-method
  18198. Translate using function or shell script METHOD the text from FROM to TO.
  18199. If METHOD is a string, it is a shell command;
  18200. otherwise, it should be a Lisp function.
  18201. BUFFER should be the buffer that the output originally came from.
  18202. Fformat-decode-run-method
  18203. Decode using function or shell script METHOD the text from FROM to TO.
  18204. If METHOD is a string, it is a shell command;
  18205. otherwise, it should be a Lisp function.
  18206. Fformat-annotate-function
  18207. Returns annotations for writing region as FORMAT.
  18208. FORMAT is a symbol naming one of the formats defined in `format-alist',
  18209. it must be a single symbol, not a list like `buffer-file-format'.
  18210. FROM and TO delimit the region to be operated on in the current buffer.
  18211. ORIG-BUF is the original buffer that the data came from.
  18212. This function works like a function on `write-region-annotate-functions':
  18213. it either returns a list of annotations, or returns with a different buffer
  18214. current, which contains the modified text to write.
  18215.  
  18216. For most purposes, consider using `format-encode-region' instead.
  18217. Fformat-decode
  18218. Decode text from any known FORMAT.
  18219. FORMAT is a symbol appearing in `format-alist' or a list of such symbols, 
  18220. or nil, in which case this function tries to guess the format of the data by
  18221. matching against the regular expressions in `format-alist'.  After a match is
  18222. found and the region decoded, the alist is searched again from the beginning
  18223. for another match.
  18224.  
  18225. Second arg LENGTH is the number of characters following point to operate on.
  18226. If optional third arg VISIT-FLAG is true, set `buffer-file-format'
  18227. to the list of formats used, and call any mode functions defined for those
  18228. formats.
  18229.  
  18230. Returns the new length of the decoded region.
  18231.  
  18232. For most purposes, consider using `format-decode-region' instead.
  18233.  
  18234. This function is called by insert-file-contents whenever a file is read.
  18235. Fformat-decode-buffer
  18236. Translate the buffer from some FORMAT.
  18237. If the format is not specified, this function attempts to guess.
  18238. `buffer-file-format' is set to the format used, and any mode-functions 
  18239. for the format are called.
  18240. Fformat-decode-region
  18241. Decode the region from some format.
  18242. Arg FORMAT is optional; if omitted the format will be determined by looking
  18243. for identifying regular expressions at the beginning of the region.
  18244. Fformat-encode-buffer
  18245. Translate the buffer into FORMAT.
  18246. FORMAT defaults to `buffer-file-format'.  It is a symbol naming one of the
  18247. formats defined in `format-alist', or a list of such symbols.
  18248. Fformat-encode-region
  18249. Translate the region into some FORMAT.
  18250. FORMAT defaults to `buffer-file-format', it is a symbol naming
  18251. one of the formats defined in `format-alist', or a list of such symbols.
  18252. Fformat-write-file
  18253. Write current buffer into a FILE using some FORMAT.
  18254. Makes buffer visit that file and sets the format as the default for future
  18255. saves.  If the buffer is already visiting a file, you can specify a directory
  18256. name as FILE, to write a file of the same old name in that directory.
  18257. Fformat-find-file
  18258. Find the file FILE using data format FORMAT.
  18259. If FORMAT is nil then do not do any format conversion.
  18260. Fformat-insert-file
  18261. Insert the contents of file FILE using data format FORMAT.
  18262. If FORMAT is nil then do not do any format conversion.
  18263. The optional third and fourth arguments BEG and END specify
  18264. the part of the file to read.
  18265.  
  18266. The return value is like the value of `insert-file-contents':
  18267. a list (ABSOLUTE-FILE-NAME . SIZE).
  18268. Fformat-read
  18269. Read and return the name of a format.
  18270. Return value is a list, like `buffer-file-format'; it may be nil.
  18271. Formats are defined in `format-alist'.  Optional arg is the PROMPT to use.
  18272. Fformat-replace-strings
  18273. Do multiple replacements on the buffer.
  18274. ALIST is a list of (from . to) pairs, which should be proper arguments to
  18275. `search-forward' and `replace-match' respectively.
  18276. Optional 2nd arg REVERSE, if non-nil, means the pairs are (to . from), so that
  18277. you can use the same list in both directions if it contains only literal
  18278. strings. 
  18279. Optional args BEGIN and END specify a region of the buffer to operate on.
  18280. Fformat-delq-cons
  18281. Remove the given CONS from LIST by side effect,
  18282. and return the new LIST.  Since CONS could be the first element 
  18283. of LIST, write `(setq foo (format-delq-cons element foo))' to be sure of 
  18284. changing the value of `foo'.
  18285. Fformat-make-relatively-unique
  18286. Delete common elements of lists A and B, return as pair.
  18287. Compares using `equal'.
  18288. Fformat-common-tail
  18289. Given two lists that have a common tail, return it.
  18290. Compares with `equal', and returns the part of A that is equal to the
  18291. equivalent part of B.  If even the last items of the two are not equal,
  18292. returns nil.
  18293. Fformat-reorder
  18294. Arrange ITEMS to following partial ORDER.
  18295. Elements of ITEMS equal to elements of ORDER will be rearranged to follow the
  18296. ORDER.  Unmatched items will go last.
  18297. Fformat-deannotate-region
  18298. Translate annotations in the region into text properties.
  18299. This sets text properties between FROM to TO as directed by the 
  18300. TRANSLATIONS and NEXT-FN arguments.
  18301.  
  18302. NEXT-FN is a function that searches forward from point for an annotation.
  18303. It should return a list of 4 elements: (BEGIN END NAME POSITIVE).  BEGIN and
  18304. END are buffer positions bounding the annotation, NAME is the name searched
  18305. for in TRANSLATIONS, and POSITIVE should be non-nil if this annotation marks
  18306. the beginning of a region with some property, or nil if it ends the region.
  18307. NEXT-FN should return nil if there are no annotations after point.
  18308.  
  18309. The basic format of the TRANSLATIONS argument is described in the
  18310. documentation for the `format-annotate-region' function.  There are some
  18311. additional things to keep in mind for decoding, though:
  18312.  
  18313. When an annotation is found, the TRANSLATIONS list is searched for a
  18314. text-property name and value that corresponds to that annotation.  If the
  18315. text-property has several annotations associated with it, it will be used only
  18316. if the other annotations are also in effect at that point.  The first match
  18317. found whose annotations are all present is used.
  18318.  
  18319. The text property thus determined is set to the value over the region between
  18320. the opening and closing annotations.  However, if the text-property name has a
  18321. non-nil `format-list-valued' property, then the value will be consed onto the
  18322. surrounding value of the property, rather than replacing that value.
  18323.  
  18324. There are some special symbols that can be used in the "property" slot of
  18325. the TRANSLATIONS list: PARAMETER and FUNCTION (spelled in uppercase).
  18326. Annotations listed under the pseudo-property PARAMETER are considered to be
  18327. arguments of the immediately surrounding annotation; the text between the
  18328. opening and closing parameter annotations is deleted from the buffer but saved
  18329. as a string.  The surrounding annotation should be listed under the
  18330. pseudo-property FUNCTION.  Instead of inserting a text-property for this
  18331. annotation, the function listed in the VALUE slot is called to make whatever
  18332. changes are appropriate.  The function's first two arguments are the START and
  18333. END locations, and the rest of the arguments are any PARAMETERs found in that
  18334. region.
  18335.  
  18336. Any annotations that are found by NEXT-FN but not defined by TRANSLATIONS
  18337. are saved as values of the `unknown' text-property (which is list-valued).
  18338. The TRANSLATIONS list should usually contain an entry of the form
  18339.     (unknown (nil format-annotate-value))
  18340. to write these unknown annotations back into the file.
  18341. Fformat-subtract-regions
  18342. Remove the regions in SUBTRAHEND from the regions in MINUEND.  A region
  18343. is a dotted pair (from . to).  Both parameters are lists of regions.  Each
  18344. list must contain nonoverlapping, noncontiguous regions, in descending
  18345. order.  The result is also nonoverlapping, noncontiguous, and in descending
  18346. order.  The first element of MINUEND can have a cdr of nil, indicating that
  18347. the end of that region is not yet known.
  18348. Fformat-property-increment-region
  18349. Increment property PROP over the region between FROM and TO by the
  18350. amount DELTA (which may be negative).  If property PROP is nil anywhere
  18351. in the region, it is treated as though it were DEFAULT.
  18352. Fformat-insert-annotations
  18353. Apply list of annotations to buffer as `write-region' would.
  18354. Inserts each element of the given LIST of buffer annotations at its
  18355. appropriate place.  Use second arg OFFSET if the annotations' locations are
  18356. not relative to the beginning of the buffer: annotations will be inserted
  18357. at their location-OFFSET+1 (ie, the offset is treated as the character number
  18358. of the first character in the buffer).
  18359. Fformat-annotate-value
  18360. Return OLD and NEW as a (close . open) annotation pair.
  18361. Useful as a default function for TRANSLATIONS alist when the value of the text
  18362. property is the name of the annotation that you want to use, as it is for the
  18363. `unknown' text property.
  18364. Fformat-annotate-region
  18365. Generate annotations for text properties in the region.
  18366. Searches for changes between FROM and TO, and describes them with a list of
  18367. annotations as defined by alist TRANSLATIONS and FORMAT-FN.  IGNORE lists text
  18368. properties not to consider; any text properties that are neither ignored nor
  18369. listed in TRANSLATIONS are warned about.
  18370. If you actually want to modify the region, give the return value of this
  18371. function to `format-insert-annotations'.
  18372.  
  18373. Format of the TRANSLATIONS argument:
  18374.  
  18375. Each element is a list whose car is a PROPERTY, and the following
  18376. elements are VALUES of that property followed by the names of zero or more
  18377. ANNOTATIONS.  Whenever the property takes on that value, the annotations
  18378. (as formatted by FORMAT-FN) are inserted into the file.
  18379. When the property stops having that value, the matching negated annotation
  18380. will be inserted (it may actually be closed earlier and reopened, if
  18381. necessary, to keep proper nesting). 
  18382.  
  18383. If the property's value is a list, then each element of the list is dealt with
  18384. separately.
  18385.  
  18386. If a VALUE is numeric, then it is assumed that there is a single annotation
  18387. and each occurrence of it increments the value of the property by that number.
  18388. Thus, given the entry (left-margin (4 "indent")), if the left margin
  18389. changes from 4 to 12, two <indent> annotations will be generated.
  18390.  
  18391. If the VALUE is nil, then instead of annotations, a function should be
  18392. specified.  This function is used as a default: it is called for all
  18393. transitions not explicitly listed in the table.  The function is called with
  18394. two arguments, the OLD and NEW values of the property.  It should return
  18395. lists of annotations like `format-annotate-location' does.
  18396.  
  18397.     The same structure can be used in reverse for reading files.
  18398. Fformat-annotate-location
  18399. Return annotation(s) needed at LOCATION.
  18400. This includes any properties that change between LOC-1 and LOC.
  18401. If ALL is true, don't look at previous location, but generate annotations for
  18402. all non-nil properties.
  18403. Third argument IGNORE is a list of text-properties not to consider.
  18404.  
  18405. Return value is a vector of 3 elements:
  18406. 1. List of names of the annotations to close
  18407. 2. List of the names of annotations to open.
  18408. 3. List of properties that were ignored or couldn't be annotated.
  18409. Fformat-annotate-single-property-change
  18410. Return annotations for PROPERTY changing from OLD to NEW.
  18411. These are searched for in the TRANSLATIONS alist.
  18412. If NEW does not appear in the list, but there is a default function, then that
  18413. function is called.
  18414. Annotations to open and to close are returned as a dotted pair.
  18415. Fformat-annotate-atomic-property-change
  18416. Internal function annotate a single property change.
  18417. PROP-ALIST is the relevant segment of a TRANSLATIONS list.
  18418. OLD and NEW are the values.
  18419. Vstandard-indent
  18420. Default number of columns for margin-changing functions to indent.
  18421. Vindent-line-function
  18422. Function to indent current line.
  18423. Findent-according-to-mode
  18424. Indent line in proper way for current major mode.
  18425. Findent-for-tab-command
  18426. Indent line in proper way for current major mode.
  18427. Findent-rigidly
  18428. Indent all lines starting in the region sideways by ARG columns.
  18429. Called from a program, takes three arguments, START, END and ARG.
  18430. Findent-line-to
  18431. Indent current line to COLUMN.
  18432. This function removes or adds spaces and tabs at beginning of line
  18433. only if necessary.  It leaves point at end of indentation.
  18434. Fcurrent-left-margin
  18435. Return the left margin to use for this line.
  18436. This is the value of the buffer-local variable `left-margin' plus the value
  18437. of the `left-margin' text-property at the start of the line.
  18438. Fmove-to-left-margin
  18439. Move to the left margin of the current line.
  18440. With optional argument, move forward N-1 lines first.
  18441. The column moved to is the one given by the `current-left-margin' function.
  18442. If the line's indentation appears to be wrong, and this command is called
  18443. interactively or with optional argument FORCE, it will be fixed.
  18444. Findent-to-left-margin
  18445. Indent current line to the column given by `current-left-margin'.
  18446. Fdelete-to-left-margin
  18447. Remove left margin indentation from a region.
  18448. This deletes to the column given by `current-left-margin'.
  18449. In no case will it delete non-whitespace.
  18450. Args FROM and TO are optional; default is the whole buffer.
  18451. Fset-left-margin
  18452. Set the left margin of the region to WIDTH.
  18453. If `auto-fill-mode' is active, re-fill the region to fit the new margin.
  18454. Fset-right-margin
  18455. Set the right margin of the region to WIDTH.
  18456. If `auto-fill-mode' is active, re-fill the region to fit the new margin.
  18457. Falter-text-property
  18458. Programmatically change value of a text-property.
  18459. For each region between FROM and TO that has a single value for PROPERTY,
  18460. apply FUNCTION to that value and sets the property to the function's result.
  18461. Optional fifth argument OBJECT specifies the string or buffer to operate on.
  18462. Fincrease-left-margin
  18463. Increase or decrease the left-margin of the region.
  18464. With no prefix argument, this adds `standard-indent' of indentation.
  18465. A prefix arg (optional third arg INC noninteractively) specifies the amount
  18466. to change the margin by, in characters.
  18467. If `auto-fill-mode' is active, re-fill the region to fit the new margin.
  18468. Fdecrease-left-margin
  18469. Make the left margin of the region smaller.
  18470. With no prefix argument, decrease the indentation by `standard-indent'.
  18471. A prefix arg (optional third arg INC noninteractively) specifies the amount
  18472. to change the margin by, in characters.
  18473. If `auto-fill-mode' is active, re-fill the region to fit the new margin.
  18474. Fincrease-right-margin
  18475. Increase the right-margin of the region.
  18476. With no prefix argument, increase the right margin by `standard-indent'.
  18477. A prefix arg (optional third arg INC noninteractively) specifies the amount
  18478. to change the margin by, in characters.  A negative argument decreases
  18479. the right margin width.
  18480. If `auto-fill-mode' is active, re-fill the region to fit the new margin.
  18481. Fdecrease-right-margin
  18482. Make the right margin of the region smaller.
  18483. With no prefix argument, decrease the right margin by `standard-indent'.
  18484. A prefix arg (optional third arg INC noninteractively) specifies the amount
  18485. of width to remove, in characters.  A negative argument increases
  18486. the right margin width.
  18487. If `auto-fill-mode' is active, re-fills region to fit in new margin.
  18488. Fbeginning-of-line-text
  18489. Move to the beginning of the text on this line.
  18490. With optional argument, move forward N-1 lines first.
  18491. From the beginning of the line, moves past the left-margin indentation, the
  18492. fill-prefix, and any indentation used for centering or right-justifying the
  18493. line, but does not move past any whitespace that was explicitly inserted 
  18494. (such as a tab used to indent the first line of a paragraph).
  18495. Vindent-region-function
  18496. Short cut function to indent region using `indent-according-to-mode'.
  18497. A value of nil means really run `indent-according-to-mode' on each line.
  18498. Findent-region
  18499. Indent each nonblank line in the region.
  18500. With no argument, indent each line using `indent-according-to-mode',
  18501. or use `indent-region-function' to do the whole region if that's non-nil.
  18502. If there is a fill prefix, make each line start with the fill prefix.
  18503. With argument COLUMN, indent each line to that column.
  18504. Called from a program, takes three args: START, END and COLUMN.
  18505. Findent-relative-maybe
  18506. Indent a new line like previous nonblank line.
  18507. Findent-relative
  18508. Space out to under next indent point in previous nonblank line.
  18509. An indent point is a non-whitespace character following whitespace.
  18510. If the previous nonblank line has no indent points beyond the
  18511. column point starts at, `tab-to-tab-stop' is done instead.
  18512. Vtab-stop-list
  18513. *List of tab stop positions used by `tab-to-tab-stops'.
  18514. This should be a list of integers, ordered from smallest to largest.
  18515. Vedit-tab-stops-map
  18516. Keymap used in `edit-tab-stops'.
  18517. Vedit-tab-stops-buffer
  18518. Buffer whose tab stops are being edited--in case
  18519. the variable `tab-stop-list' is local in that buffer.
  18520. Fedit-tab-stops
  18521. Edit the tab stops used by `tab-to-tab-stop'.
  18522. Creates a buffer *Tab Stops* containing text describing the tab stops.
  18523. A colon indicates a column where there is a tab stop.
  18524. You can add or remove colons and then do \<edit-tab-stops-map>\[edit-tab-stops-note-changes] to make changes take effect.
  18525. Fedit-tab-stops-note-changes
  18526. Put edited tab stops into effect.
  18527. Ftab-to-tab-stop
  18528. Insert spaces or tabs to next defined tab-stop column.
  18529. The variable `tab-stop-list' is a list of columns at which there are tab stops.
  18530. Use \[edit-tab-stops] to edit them interactively.
  18531. Fmove-to-tab-stop
  18532. Move point to next defined tab-stop column.
  18533. The variable `tab-stop-list' is a list of columns at which there are tab stops.
  18534. Use \[edit-tab-stops] to edit them interactively.
  18535. Vsearch-last-string
  18536. Last string search for by a search command.
  18537. This does not include direct calls to the primitive search functions,
  18538. and does not include searches that are aborted.
  18539. Vsearch-last-regexp
  18540. Last string searched for by a regexp search command.
  18541. This does not include direct calls to the primitive search functions,
  18542. and does not include searches that are aborted.
  18543. Vsearch-exit-option
  18544. Non-nil means random control characters terminate incremental search.
  18545. Vsearch-ring
  18546. List of search string sequences.
  18547. Vregexp-search-ring
  18548. List of regular expression search string sequences.
  18549. Vsearch-ring-yank-pointer
  18550. The tail of the search ring whose car is the last thing searched for.
  18551. Vregexp-search-ring-yank-pointer
  18552. The tail of the regular expression search ring whose car is the last
  18553. thing searched for.
  18554. Visearch-mode-map
  18555. Keymap for isearch-mode.
  18556. Vminibuffer-local-isearch-map
  18557. Keymap for editing isearch strings in the minibuffer.
  18558. Visearch-mode-hook
  18559. Function(s) to call after starting up an incremental search.
  18560. Visearch-mode-end-hook
  18561. Function(s) to call after terminating an incremental search.
  18562. Fisearch-forward
  18563. Do incremental search forward.
  18564. With a prefix argument, do an incremental regular expression search instead.
  18565. \<isearch-mode-map>
  18566. As you type characters, they add to the search string and are found.
  18567. The following non-printing keys are bound in `isearch-mode-map'.  
  18568.  
  18569. Type \[isearch-delete-char] to cancel characters from end of search string.
  18570. Type \[isearch-exit] to exit, leaving point at location found.
  18571. Type LFD (C-j) to match end of line.
  18572. Type \[isearch-repeat-forward] to search again forward, \[isearch-repeat-backward] to search again backward.
  18573. Type \[isearch-yank-word] to yank word from buffer onto end of search string and search for it.
  18574. Type \[isearch-yank-line] to yank rest of line onto end of search string and search for it.
  18575. Type \[isearch-quote-char] to quote control character to search for it.
  18576. Type \[isearch-whitespace-chars] to match all whitespace chars in regexp.
  18577. \[isearch-abort] while searching or when search has failed cancels input back to what has
  18578.  been found successfully.
  18579. \[isearch-abort] when search is successful aborts and moves point to starting point.
  18580.  
  18581. Also supported is a search ring of the previous 16 search strings.
  18582. Type \[isearch-ring-advance] to search for the next item in the search ring.
  18583. Type \[isearch-ring-retreat] to search for the previous item in the search ring.
  18584. Type \[isearch-complete] to complete the search string using the search ring.
  18585.  
  18586. The above keys are bound in the isearch-mode-map.  To change the keys which
  18587.  are special to isearch-mode, simply change the bindings in that map.
  18588.  
  18589. Other control and meta characters terminate the search
  18590.  and are then executed normally (depending on `search-exit-option').
  18591.  
  18592. If this function is called non-interactively, it does not return to
  18593. the calling function until the search is done.
  18594.  
  18595. The bindings, more precisely:
  18596. \{isearch-mode-map}
  18597. Fisearch-forward-regexp
  18598. Do incremental search forward for regular expression.
  18599. Like ordinary incremental search except that your input
  18600. is treated as a regexp.  See \[isearch-forward] for more info.
  18601. Fisearch-backward
  18602. Do incremental search backward.
  18603. With a prefix argument, do an incremental regular expression search instead.
  18604. See \[isearch-forward] for more information.
  18605. Fisearch-backward-regexp
  18606. Do incremental search backward for regular expression.
  18607. Like ordinary incremental search except that your input
  18608. is treated as a regexp.  See \[isearch-forward] for more info.
  18609. Fisearch-mode
  18610. Start isearch minor mode.  Called by isearch-forward, etc.
  18611. Fisearch-exit
  18612. Exit search normally.
  18613. However, if this is the first command after starting incremental
  18614. search and `search-nonincremental-instead' is non-nil, do an
  18615. incremental search via `isearch-edit-string'.
  18616. Fisearch-edit-string
  18617. Edit the search string in the minibuffer.
  18618. The following additional command keys are active while editing.
  18619. \<minibuffer-local-isearch-map>
  18620. \[exit-minibuffer] to exit editing and resume incremental searching.
  18621. \[isearch-forward-exit-minibuffer] to resume isearching forward.
  18622. \[isearch-backward-exit-minibuffer] to resume isearching backward.
  18623. \[isearch-ring-advance-edit] to replace the search string with the next item in the search ring.
  18624. \[isearch-ring-retreat-edit] to replace the search string with the next item in the search ring.
  18625. \[isearch-complete-edit] to complete the search string from the search ring.
  18626. Fisearch-abort
  18627. Quit incremental search mode if searching is successful, signalling quit.
  18628. Otherwise, revert to previous successful search and continue searching.
  18629. Use `isearch-exit' to quit without signalling.
  18630. Fisearch-repeat-forward
  18631. Repeat incremental search forwards.
  18632. Fisearch-repeat-backward
  18633. Repeat incremental search backwards.
  18634. Fisearch-toggle-regexp
  18635. Toggle regexp searching on or off.
  18636. Fisearch-toggle-case-fold
  18637. Toggle case folding in searching on or off.
  18638. Fisearch-delete-char
  18639. Discard last input item and move point back.  
  18640. If no previous match was done, just beep.
  18641. Fisearch-help-or-delete-char
  18642. Show Isearch help or delete backward in the search string.
  18643. Deletes when `delete-key-deletes-forward' is t and C-h is used for deleting
  18644. backwards.
  18645. Fisearch-yank-word
  18646. Pull next word from buffer into search string.
  18647. Fisearch-yank-line
  18648. Pull rest of line from buffer into search string.
  18649. Fisearch-yank-kill
  18650. Pull rest of line from kill ring into search string.
  18651. Fisearch-yank-sexp
  18652. Pull next expression from buffer into search string.
  18653. Fisearch-yank-x-selection
  18654. Pull the current X selection into the search string.
  18655. Fisearch-yank-x-clipboard
  18656. Pull the current X clipboard selection into the search string.
  18657. Fisearch-*-char
  18658. Handle * and ? specially in regexps.
  18659. Fisearch-|-char
  18660. If in regexp search, jump to the barrier.
  18661. Fisearch-quote-char
  18662. Quote special characters for incremental search.
  18663. Fisearch-return-char
  18664. Convert return into newline for incremental search.
  18665. Obsolete.
  18666. Fisearch-printing-char
  18667. Any other printing character => add it to the search string and search.
  18668. Fisearch-whitespace-chars
  18669. Match all whitespace chars, if in regexp mode.
  18670. Fisearch-ring-advance
  18671. Advance to the next search string in the ring.
  18672. Fisearch-ring-retreat
  18673. Retreat to the previous search string in the ring.
  18674. Fisearch-ring-adjust-edit
  18675. Use the next or previous search string in the ring while in minibuffer.
  18676. Fisearch-ring-retreat-edit
  18677. Retreat to the previous search string in the ring while in the minibuffer.
  18678. Fisearch-complete
  18679. Complete the search string from the strings on the search ring.
  18680. The completed string is then editable in the minibuffer.
  18681. If there is no completion possible, say so and continue searching.
  18682. Fisearch-complete-edit
  18683. Same as `isearch-complete' except in the minibuffer.
  18684. Fisearch-no-upper-case-p
  18685. Return t if there are no upper case chars in string.
  18686. But upper case chars preceded by \ do not count since they
  18687. have special meaning in a regexp.
  18688. Fwith-caps-disable-folding
  18689. Eval BODY with `case-fold-search' let to nil if STRING contains
  18690. uppercase letters and `search-caps-disable-folding' is t.
  18691. Fswitch-to-buffer
  18692. Select buffer BUFNAME in the current window.
  18693. BUFNAME may be a buffer or a buffer name.
  18694. Optional second arg NORECORD non-nil means
  18695. do not put this buffer at the front of the list of recently selected ones.
  18696.  
  18697. WARNING: This is NOT the way to work on another buffer temporarily
  18698. within a Lisp program!  Use `set-buffer' instead.  That avoids messing with
  18699. the window-buffer correspondences.
  18700. Fpop-to-buffer
  18701. Select buffer BUFNAME in some window, preferably a different one.
  18702. If BUFNAME is nil, then some other buffer is chosen.
  18703. If `pop-up-windows' is non-nil, windows can be split to do this.
  18704. If optional second arg NOT-THIS-WINDOW-P is non-nil, insist on finding
  18705. another window even if BUFNAME is already visible in the selected window.
  18706. If optional third arg is non-nil, it is the frame to pop to this
  18707. buffer on.
  18708. If `focus-follows-mouse' is non-nil, keyboard focus is left unchanged.
  18709. VBuffer-menu-mode-map
  18710.  
  18711. FBuffer-menu-mode
  18712. Major mode for editing a list of buffers.
  18713. Each line describes one of the buffers in Emacs.
  18714. Letters do not insert themselves; instead, they are commands.
  18715. \<Buffer-menu-mode-map>
  18716. \[Buffer-menu-mouse-select] -- select buffer you click on, in place of the buffer menu.
  18717. \[Buffer-menu-this-window] -- select current line's buffer in place of the buffer menu.
  18718. \[Buffer-menu-other-window] -- select that buffer in another window,
  18719.   so the buffer menu buffer remains visible in its window.
  18720. \[Buffer-menu-switch-other-window] -- make another window display that buffer.
  18721. \[Buffer-menu-mark] -- mark current line's buffer to be displayed.
  18722. \[Buffer-menu-select] -- select current line's buffer.
  18723.   Also show buffers marked with m, in other windows.
  18724. \[Buffer-menu-1-window] -- select that buffer in full-frame window.
  18725. \[Buffer-menu-2-window] -- select that buffer in one window,
  18726.   together with buffer selected before this one in another window.
  18727. \[Buffer-menu-visit-tags-table] -- visit-tags-table this buffer.
  18728. \[Buffer-menu-not-modified] -- clear modified-flag on that buffer.
  18729. \[Buffer-menu-save] -- mark that buffer to be saved, and move down.
  18730. \[Buffer-menu-delete] -- mark that buffer to be deleted, and move down.
  18731. \[Buffer-menu-delete-backwards] -- mark that buffer to be deleted, and move up.
  18732. \[Buffer-menu-execute] -- delete or save marked buffers.
  18733. \[Buffer-menu-unmark] -- remove all kinds of marks from current line.
  18734.   With prefix argument, also move up one line.
  18735. \[Buffer-menu-backup-unmark] -- back up a line and remove marks.
  18736. \[Buffer-menu-toggle-read-only] -- toggle read-only status of buffer on this line.
  18737. FBuffer-menu-buffer
  18738. Return buffer described by this line of buffer menu.
  18739. Fbuffer-menu
  18740. Make a menu of buffers so you can save, delete or select them.
  18741. With argument, show only buffers that are visiting files.
  18742. Type ? after invocation to get help on commands available.
  18743. Type q immediately to make the buffer menu go away.
  18744. Fbuffer-menu-other-window
  18745. Display a list of buffers in another window.
  18746. With the buffer list buffer, you can save, delete or select the buffers.
  18747. With argument, show only buffers that are visiting files.
  18748. Type ? after invocation to get help on commands available.
  18749. Type q immediately to make the buffer menu go away.
  18750. FBuffer-menu-quit
  18751. Quit the buffer menu.
  18752. FBuffer-menu-mark
  18753. Mark buffer on this line for being displayed by \<Buffer-menu-mode-map>\[Buffer-menu-select] command.
  18754. FBuffer-menu-unmark
  18755. Cancel all requested operations on buffer on this line and move down.
  18756. Optional ARG means move up.
  18757. FBuffer-menu-backup-unmark
  18758. Move up and cancel all requested operations on buffer on line above.
  18759. FBuffer-menu-delete
  18760. Mark buffer on this line to be deleted by \<Buffer-menu-mode-map>\[Buffer-menu-execute] command.
  18761. Prefix arg is how many buffers to delete.
  18762. Negative arg means delete backwards.
  18763. FBuffer-menu-delete-backwards
  18764. Mark buffer on this line to be deleted by \<Buffer-menu-mode-map>\[Buffer-menu-execute] command
  18765. and then move up one line.  Prefix arg means move that many lines.
  18766. FBuffer-menu-save
  18767. Mark buffer on this line to be saved by \<Buffer-menu-mode-map>\[Buffer-menu-execute] command.
  18768. FBuffer-menu-not-modified
  18769. Mark buffer on this line as unmodified (no changes to save).
  18770. FBuffer-menu-execute
  18771. Save and/or delete buffers marked with \<Buffer-menu-mode-map>\[Buffer-menu-save] or \<Buffer-menu-mode-map>\[Buffer-menu-delete] commands.
  18772. FBuffer-menu-select
  18773. Select this line's buffer; also display buffers marked with `>'.
  18774. You can mark buffers with the \<Buffer-menu-mode-map>\[Buffer-menu-mark] command.
  18775. This command deletes and replaces all the previously existing windows
  18776. in the selected frame.
  18777. FBuffer-menu-visit-tags-table
  18778. Visit the tags table in the buffer on this line.  See `visit-tags-table'.
  18779. FBuffer-menu-1-window
  18780. Select this line's buffer, alone, in full frame.
  18781. FBuffer-menu-mouse-select
  18782. Select the buffer whose line you click on.
  18783. FBuffer-menu-this-window
  18784. Select this line's buffer in this window.
  18785. FBuffer-menu-other-window
  18786. Select this line's buffer in other window, leaving buffer menu visible.
  18787. FBuffer-menu-switch-other-window
  18788. Make the other window select this line's buffer.
  18789. The current window remains selected.
  18790. FBuffer-menu-2-window
  18791. Select this line's buffer, with previous buffer in second window.
  18792. FBuffer-menu-toggle-read-only
  18793. Toggle read-only status of buffer on this line, perhaps via version control.
  18794. Vlist-buffers-identification
  18795. String used to identify this buffer, or a function of one argument
  18796. to generate such a string.  This variable is always buffer-local.
  18797. Flist-buffers
  18798. Display a list of names of existing buffers.
  18799. The list is displayed in a buffer named `*Buffer List*'.
  18800. Note that buffers with names starting with spaces are omitted.
  18801. Non-null optional arg FILES-ONLY means mention only file buffers.
  18802.  
  18803. The M column contains a * for buffers that are modified.
  18804. The R column contains a % for buffers that are read-only.
  18805. Flist-buffers-noselect
  18806. Create and return a buffer with a list of names of existing buffers.
  18807. The buffer is named `*Buffer List*'.
  18808. Note that buffers with names starting with spaces are omitted.
  18809. Non-null optional arg FILES-ONLY means mention only file buffers.
  18810.  
  18811. The M column contains a * for buffers that are modified.
  18812. The R column contains a % for buffers that are read-only.
  18813. Fone-window-p
  18814. Returns non-nil if the selected window is the only window (in its frame).
  18815. Optional arg NOMINI non-nil means don't count the minibuffer
  18816. even if it is active.
  18817.  
  18818. The optional arg ALL-FRAMES t means count windows on all frames.
  18819. If it is `visible', count windows on all visible frames.
  18820. ALL-FRAMES nil or omitted means count only the selected frame, 
  18821. plus the minibuffer it uses (which may be on another frame).
  18822. ALL-FRAMES = 0 means count windows on all visible and iconified frames.
  18823. If ALL-FRAMES is any other value, count only the selected frame.
  18824.  
  18825. If optional third argument DEVICE is nil or omitted, count frames
  18826. on all devices.
  18827. If a device, count frames only on that device.
  18828. If a device type, count frames only on devices of that type.
  18829. Otherwise, count frames only on the selected device.
  18830. Fwalk-windows
  18831. Cycle through all visible windows, calling PROC for each one.
  18832. PROC is called with a window as argument.
  18833.  
  18834. Optional second arg MINIBUF t means count the minibuffer window even
  18835. if not active.  MINIBUF nil or omitted means count the minibuffer iff
  18836. it is active.  MINIBUF neither t nor nil means not to count the
  18837. minibuffer even if it is active.
  18838.  
  18839. Several frames may share a single minibuffer; if the minibuffer
  18840. counts, all windows on all frames that share that minibuffer count
  18841. too.  Therefore, when a separate minibuffer frame is active,
  18842. `walk-windows' includes the windows in the frame from which you
  18843. entered the minibuffer, as well as the minibuffer window.  But if the
  18844. minibuffer does not count, only windows from WINDOW's frame count.
  18845.  
  18846. ALL-FRAMES is the optional third argument.
  18847. ALL-FRAMES nil or omitted means cycle within the frames as specified above.
  18848. ALL-FRAMES = `visible' means include windows on all visible frames.
  18849. ALL-FRAMES = 0 means include windows on all visible and iconified frames.
  18850. ALL-FRAMES = t means include windows on all frames including invisible frames.
  18851. Anything else means restrict to WINDOW's frame.
  18852.  
  18853. If optional fourth argument DEVICE is nil or omitted, include frames
  18854. on all devices.
  18855. If a device, include frames only on that device.
  18856. If a device type, include frames only on devices of that type.
  18857. Otherwise, include frames only on the selected device.
  18858. Fminibuffer-window-active-p
  18859. Return t if WINDOW (a minibuffer window) is now active.
  18860. Fsave-selected-window
  18861. Execute BODY, then select the window that was selected before BODY.
  18862. Fcount-windows
  18863. Returns the number of visible windows.
  18864. Optional arg MINIBUF non-nil means count the minibuffer
  18865. even if it is inactive.
  18866. Fbalance-windows
  18867. Makes all visible windows the same height (approximately).
  18868. Fsplit-window-vertically
  18869. Split current window into two windows, one above the other.
  18870. The uppermost window gets ARG lines and the other gets the rest.
  18871. Negative arg means select the size of the lowermost window instead.
  18872. With no argument, split equally or close to it.
  18873. Both windows display the same buffer now current.
  18874.  
  18875. If the variable split-window-keep-point is non-nil, both new windows
  18876. will get the same value of point as the current window.  This is often
  18877. more convenient for editing.
  18878.  
  18879. Otherwise, we chose window starts so as to minimize the amount of
  18880. redisplay; this is convenient on slow terminals.  The new selected
  18881. window is the one that the current value of point appears in.  The
  18882. value of point can change if the text around point is hidden by the
  18883. new mode line.
  18884.  
  18885. Programs should probably use split-window instead of this.
  18886. Fsplit-window-horizontally
  18887. Split current window into two windows side by side.
  18888. This window becomes the leftmost of the two, and gets ARG columns.
  18889. Negative arg means select the size of the rightmost window instead.
  18890. No arg means split equally.
  18891. Fenlarge-window-horizontally
  18892. Make current window ARG columns wider.
  18893. Fshrink-window-horizontally
  18894. Make current window ARG columns narrower.
  18895. Fshrink-window-if-larger-than-buffer
  18896. Shrink the WINDOW to be as small as possible to display its contents.
  18897. Do not shrink to less than `window-min-height' lines.
  18898. Do nothing if the buffer contains more lines than the present window height,
  18899. or if some of the window's contents are scrolled out of view,
  18900. or if the window is not the full width of the frame,
  18901. or if the window is the only window of its frame.
  18902. Fkill-buffer-and-window
  18903. Kill the current buffer and delete the selected window.
  18904. Fwindow-list
  18905. Return a list of existing windows.
  18906. If the optional argument MINIBUF is non-nil, then include minibuffer
  18907. windows in the result.
  18908.  
  18909. By default, only the windows in the selected frame are returned.
  18910. The optional argument ALL-FRAMES changes this behavior:
  18911. ALL-FRAMES = `visible' means include windows on all visible frames.
  18912. ALL-FRAMES = 0 means include windows on all visible and iconified frames.
  18913. ALL-FRAMES = t means include windows on all frames including invisible frames.
  18914. Anything else means restrict to the selected frame.
  18915. The optional fourth argument DEVICE further clarifies which frames to
  18916. search as specified by ALL-FRAMES.  This value is only meaningful if
  18917. ALL-FRAMES is non-nil.
  18918. If nil or omitted, search only the selected device.
  18919. If a device, search frames only on that device.
  18920. If a device type, search frames only on devices of that type.
  18921. Any other non-nil value means search frames on all devices.
  18922. Fbackward-other-window
  18923. Select the ARG'th different window on this frame, going backwards.
  18924. This is just like calling `other-window' with the arg negated.
  18925. Fwindows-of-buffer
  18926. Returns a list of windows that have BUFFER in them.
  18927. If BUFFER is not specified, the current buffer will be used.
  18928. Fbuffer-in-multiple-windows-p
  18929. Return t if BUFFER is in multiple windows.
  18930. If BUFFER is not specified, the current buffer will be used.
  18931. Fwindow-list
  18932. Return a list of windows on FRAME, beginning with WINDOW.
  18933. FRAME and WINDOW default to the selected ones.  
  18934. Optional second arg MINIBUF t means count the minibuffer window
  18935. even if not active.  If MINIBUF is neither t nor nil it means
  18936. not to count the minibuffer even if it is active.
  18937. Fset-window-buffer-dedicated
  18938. Make WINDOW display BUFFER and be dedicated to that buffer.
  18939. Then Emacs will not automatically change which buffer appears in WINDOW.
  18940. If BUFFER is nil, make WINDOW not be dedicated (but don't change which
  18941. buffer appears in it currently).
  18942. Fpush-window-configuration
  18943. Push the current window configuration onto the window-config stack.
  18944. If CONFIG is specified, push it instead of the current window configuration.
  18945. Each frame has its own window-config stack.
  18946. Fpop-window-configuration
  18947. Pop the top window configuration off the window-config stack and set it.
  18948. Before setting the new window configuration, the current window configuration
  18949.  is pushed onto the "unpop" stack.
  18950. `unpop-window-configuration' undoes what this function does.
  18951. Each frame has its own window-config and "unpop" stack.
  18952. Funpop-window-configuration
  18953. Undo the effect of the most recent `pop-window-configuration'.
  18954. This does exactly the inverse of what `pop-window-configuration' does:
  18955.  i.e. it pops a window configuration off of the "unpop" stack and
  18956.  pushes the current window configuration onto the window-config stack.
  18957. Each frame has its own window-config and "unpop" stack.
  18958. Vdisplay-buffer-function
  18959. If non-nil, function to call to handle `display-buffer'.
  18960. It will receive three args: the same as those to `display-buffer'.
  18961. Vpre-display-buffer-function
  18962. If non-nil, function that will be called from `display-buffer'
  18963. as the first action.  It will receive three args: the same as those
  18964. to `display-buffer'.
  18965. This function may be used to select an appropriate frame for the buffer,
  18966. for example.  See also the variable `display-buffer-function', which may
  18967. be used to completely replace the `display-buffer' function.
  18968. If the return value of this function is non-nil, it should be a frame,
  18969. and that frame will be used to display the buffer.
  18970. Vpop-up-frame-function
  18971. Function to call to handle automatic new frame creation.
  18972. It is called with no arguments and should return a newly created frame.
  18973.  
  18974. A typical value might be `(lambda () (new-frame pop-up-frame-alist))'
  18975. where `pop-up-frame-alist' would hold the default frame parameters.
  18976. Vspecial-display-function
  18977. Function to call to make a new frame for a special buffer.
  18978. It is called with two arguments, the buffer and optional buffer specific
  18979. data, and should return a window displaying that buffer.
  18980. The default value makes a separate frame for the buffer,
  18981. using `special-display-frame-alist' to specify the frame parameters.
  18982.  
  18983. A buffer is special if its is listed in `special-display-buffer-names'
  18984. or matches a regexp in `special-display-regexps'.
  18985. Fdisplay-buffer
  18986. Make BUFFER appear in some window on the current frame, but don't select it.
  18987. BUFFER can be a buffer or a buffer name.
  18988. If BUFFER is shown already in some window in the current frame,
  18989. just uses that one, unless the window is the selected window and
  18990. NOT-THIS-WINDOW-P is non-nil (interactively, with prefix arg).
  18991.  
  18992. If BUFFER has a dedicated frame, display on that frame instead of
  18993. the current frame, unless OVERRIDE-FRAME is non-nil.
  18994.  
  18995. If OVERRIDE-FRAME is non-nil, display on that frame instead of
  18996. the current frame (or the dedicated frame).
  18997.  
  18998. If `pop-up-windows' is non-nil, always use the
  18999. current frame and create a new window regardless of whether the
  19000. buffer has a dedicated frame, and regardless of whether
  19001. OVERRIDE-FRAME was specified.
  19002.  
  19003. If `pop-up-frames' is non-nil, make a new frame if no window shows BUFFER.
  19004.  
  19005. Returns the window displaying BUFFER.
  19006. Fforward-sexp
  19007. Move forward across one balanced expression (sexp).
  19008. With argument, do it that many times.  Negative arg -N means
  19009. move backward across N balanced expressions.
  19010. Fbackward-sexp
  19011. Move backward across one balanced expression (sexp).
  19012. With argument, do it that many times.  Negative arg -N means
  19013. move forward across N balanced expressions.
  19014. Fmark-sexp
  19015. Set mark ARG sexps from point.
  19016. The place mark goes is the same place \[forward-sexp] would
  19017. move to with the same argument.
  19018. Repeat this command to mark more sexps in the same direction.
  19019. Fforward-list
  19020. Move forward across one balanced group of parentheses.
  19021. With argument, do it that many times.
  19022. Negative arg -N means move backward across N groups of parentheses.
  19023. Fbackward-list
  19024. Move backward across one balanced group of parentheses.
  19025. With argument, do it that many times.
  19026. Negative arg -N means move forward across N groups of parentheses.
  19027. Fdown-list
  19028. Move forward down one level of parentheses.
  19029. With argument, do this that many times.
  19030. A negative argument means move backward but still go down a level.
  19031. In Lisp programs, an argument is required.
  19032. Fbackward-up-list
  19033. Move backward out of one level of parentheses.
  19034. With argument, do this that many times.
  19035. A negative argument means move forward but still to a less deep spot.
  19036. In Lisp programs, an argument is required.
  19037. Fup-list
  19038. Move forward out of one level of parentheses.
  19039. With argument, do this that many times.
  19040. A negative argument means move backward but still to a less deep spot.
  19041. In Lisp programs, an argument is required.
  19042. Fkill-sexp
  19043. Kill the sexp (balanced expression) following the cursor.
  19044. With argument, kill that many sexps after the cursor.
  19045. Negative arg -N means kill N sexps before the cursor.
  19046. Fbackward-kill-sexp
  19047. Kill the sexp (balanced expression) preceding the cursor.
  19048. With argument, kill that many sexps before the cursor.
  19049. Negative arg -N means kill N sexps after the cursor.
  19050. Fbeginning-of-defun
  19051. Move backward to the beginning of a defun.
  19052. With argument, do it that many times.  Negative arg -N
  19053. means move forward to Nth following beginning of defun.
  19054. Returns t unless search stops due to beginning or end of buffer.
  19055.  
  19056. Normally a defun starts when there is an char with open-parenthesis
  19057. syntax at the beginning of a line.  If `defun-prompt-regexp' is
  19058. non-nil, then a string which matches that regexp may precede the
  19059. open-parenthesis, and point ends up at the beginning of the line.
  19060. Fbeginning-of-defun-raw
  19061. Move point to the character that starts a defun.
  19062. This is identical to beginning-of-defun, except that point does not move
  19063. to the beginning of the line when `defun-prompt-regexp' is non-nil.
  19064. Fbuffer-end
  19065. Return `point-max' of BUFFER if ARG is > 0; return `point-min' otherwise.
  19066. BUFFER defaults to the current buffer if omitted.
  19067. Fend-of-defun
  19068. Move forward to next end of defun.  With argument, do it that many times.
  19069. Negative argument -N means move back to Nth preceding end of defun.
  19070.  
  19071. An end of a defun occurs right after the close-parenthesis that matches
  19072. the open-parenthesis that starts a defun; see `beginning-of-defun'.
  19073. Fmark-defun
  19074. Put mark at end of this defun, point at beginning.
  19075. The defun marked is the one that contains point or follows point.
  19076. Fnarrow-to-defun
  19077. Make text outside current defun invisible.
  19078. The defun visible is the one that contains point or follows point.
  19079. Finsert-parentheses
  19080. Enclose following ARG sexps in parentheses.  Leave point after open-paren.
  19081. A negative ARG encloses the preceding ARG sexps instead.
  19082. No argument is equivalent to zero: just insert `()' and leave point between.
  19083. If `parens-require-spaces' is non-nil, this command also inserts a space
  19084. before and after, depending on the surrounding characters.
  19085. Fmove-past-close-and-reindent
  19086. Move past next `)', delete indentation before it, then indent after it.
  19087. Flisp-complete-symbol
  19088. Perform completion on Lisp symbol preceding point.
  19089. Compare that symbol against the known Lisp symbols.
  19090.  
  19091. The context determines which symbols are considered.
  19092. If the symbol starts just after an open-parenthesis, only symbols
  19093. with function definitions are considered.  Otherwise, all symbols with
  19094. function definitions, values or properties are considered.
  19095. Fforward-page
  19096. Move forward to page boundary.  With arg, repeat, or go back if negative.
  19097. A page boundary is any line whose beginning matches the regexp
  19098. `page-delimiter'.
  19099. Fbackward-page
  19100. Move backward to page boundary.  With arg, repeat, or go fwd if negative.
  19101. A page boundary is any line whose beginning matches the regexp
  19102. `page-delimiter'.
  19103. Fmark-page
  19104. Put mark at end of page, point at beginning.
  19105. A numeric arg specifies to move forward or backward by that many pages,
  19106. thus marking a page other than the one point was originally in.
  19107. Fnarrow-to-page
  19108. Make text outside current page invisible.
  19109. A numeric arg specifies to move forward or backward by that many pages,
  19110. thus showing a page other than the one point was originally in.
  19111. Fcount-lines-page
  19112. Report number of lines on current page, and how many are before or after point.
  19113. Fwhat-page
  19114. Print page and line number of point.
  19115. Vregister-alist
  19116. Alist of elements (NAME . CONTENTS), one for each Emacs register.
  19117. NAME is a character (a number).  CONTENTS is a string, number,
  19118. frame configuration, mark or list.
  19119. A list of strings represents a rectangle.
  19120. A list of the form (file . NAME) represents the file named NAME.
  19121. A list of the form (file-query NAME POSITION) represents position POSITION
  19122.  in the file named NAME, but query before visiting it.
  19123. Fget-register
  19124. Return contents of Emacs register named REG, or nil if none.
  19125. Fset-register
  19126. Set contents of Emacs register named REGISTER to VALUE.  Returns VALUE.
  19127. See the documentation of the variable `register-alist' for possible VALUE.
  19128. Fpoint-to-register
  19129. Store current location of point in register REGISTER.
  19130. With prefix argument, store current frame configuration.
  19131. Use \[jump-to-register] to go to that location or restore that configuration.
  19132. Argument is a character, naming the register.
  19133. Fwindow-configuration-to-register
  19134. Store the window configuration of the selected frame in register REGISTER.
  19135. Use \[jump-to-register] to restore the configuration.
  19136. Argument is a character, naming the register.
  19137. Fframe-configuration-to-register
  19138. Store the window configuration of all frames in register REGISTER.
  19139. Use \[jump-to-register] to restore the configuration.
  19140. Argument is a character, naming the register.
  19141. Fjump-to-register
  19142. Move point to location stored in a register.
  19143. If the register contains a file name, find that file.
  19144.  (To put a file name in a register, you must use `set-register'.)
  19145. If the register contains a window configuration (one frame) or a frame
  19146. configuration (all frames), restore that frame or all frames accordingly.
  19147. First argument is a character, naming the register.
  19148. Optional second arg non-nil (interactively, prefix argument) says to
  19149. delete any existing frames that the frame configuration doesn't mention.
  19150. (Otherwise, these frames are iconified.)
  19151. Fview-register
  19152. Display what is contained in register named REGISTER.
  19153. The Lisp value REGISTER is a character.
  19154. Finsert-register
  19155. Insert contents of register REGISTER.  (REGISTER is a character.)
  19156. Normally puts point before and mark after the inserted text.
  19157. If optional second arg is non-nil, puts mark before and point after.
  19158. Interactively, second arg is non-nil if prefix arg is supplied.
  19159. Fcopy-to-register
  19160. Copy region into register REGISTER.  With prefix arg, delete as well.
  19161. Called from program, takes four args: REGISTER, START, END and DELETE-FLAG.
  19162. START and END are buffer positions indicating what to copy.
  19163. Fappend-to-register
  19164. Append region to text in register REGISTER.
  19165. With prefix arg, delete as well.
  19166. Called from program, takes four args: REGISTER, START, END and DELETE-FLAG.
  19167. START and END are buffer positions indicating what to append.
  19168. Fprepend-to-register
  19169. Prepend region to text in register REGISTER.
  19170. With prefix arg, delete as well.
  19171. Called from program, takes four args: REGISTER, START, END and DELETE-FLAG.
  19172. START and END are buffer positions indicating what to prepend.
  19173. Fcopy-rectangle-to-register
  19174. Copy rectangular region into register REGISTER.
  19175. With prefix arg, delete as well.
  19176. Called from program, takes four args: REGISTER, START, END and DELETE-FLAG.
  19177. START and END are buffer positions giving two corners of rectangle.
  19178. Viso8859/1-case-table
  19179. The case table for ISO-8859/1 characters.
  19180. Vuse-hard-newlines
  19181. Non-nil means to distinguish hard and soft newlines.
  19182. When this is non-nil, the functions `newline' and `open-line' add the
  19183. text-property `hard' to newlines that they insert.  Also, a line is
  19184. only considered as a candidate to match `paragraph-start' or
  19185. `paragraph-separate' if it follows a hard newline.  Newlines not
  19186. marked hard are called "soft", and are always internal to
  19187. paragraphs.  The fill functions always insert soft newlines.
  19188.  
  19189. Each buffer has its own value of this variable.
  19190. Fuse-hard-newlines
  19191. Minor mode to distinguish hard and soft newlines.
  19192. When active, the functions `newline' and `open-line' add the
  19193. text-property `hard' to newlines that they insert, and a line is
  19194. only considered as a candidate to match `paragraph-start' or
  19195. `paragraph-separate' if it follows a hard newline.
  19196.  
  19197. Prefix argument says to turn mode on if positive, off if negative.
  19198. When the mode is turned on, if there are newlines in the buffer but no hard
  19199. newlines, ask the user whether to mark as hard any newlines preceeding a 
  19200. `paragraph-start' line.  From a program, second arg INSERT specifies whether
  19201. to do this; it can be `never' to change nothing, t or `always' to force
  19202. marking, `guess' to try to do the right thing with no questions, nil 
  19203. or anything else to ask the user.
  19204.  
  19205. Newlines not marked hard are called "soft", and are always internal
  19206. to paragraphs.  The fill functions insert and delete only soft newlines.
  19207. Vparagraph-start
  19208. *Regexp for beginning of a line that starts OR separates paragraphs.
  19209. This regexp should match lines that separate paragraphs
  19210. and should also match lines that start a paragraph
  19211. (and are part of that paragraph).
  19212.  
  19213. This is matched against the text at the left margin, which is not necessarily
  19214. the beginning of the line, so it should never use "^" as an anchor.  This
  19215. ensures that the paragraph functions will work equally well within a region
  19216. of text indented by a margin setting.
  19217.  
  19218. The variable `paragraph-separate' specifies how to distinguish
  19219. lines that start paragraphs from lines that separate them.
  19220.  
  19221. If the variable `use-hard-newlines' is non-nil, then only lines following a
  19222. hard newline are considered to match.
  19223. Vparagraph-separate
  19224. *Regexp for beginning of a line that separates paragraphs.
  19225. If you change this, you may have to change paragraph-start also.
  19226.  
  19227. This is matched against the text at the left margin, which is not necessarily
  19228. the beginning of the line, so it should not use "^" as an anchor.  This
  19229. ensures that the paragraph functions will work equally within a region of
  19230. text indented by a margin setting.
  19231. Vsentence-end
  19232. *Regexp describing the end of a sentence.
  19233. All paragraph boundaries also end sentences, regardless.
  19234.  
  19235. In order to be recognized as the end of a sentence, the ending period,
  19236. question mark, or exclamation point must be followed by two spaces,
  19237. unless it's inside some sort of quotes or parenthesis.
  19238. Vpage-delimiter
  19239. *Regexp describing line-beginnings that separate pages.
  19240. Vparagraph-ignore-fill-prefix
  19241. Non-nil means the paragraph commands are not affected by `fill-prefix'.
  19242. This is desirable in modes where blank lines are the paragraph delimiters.
  19243. Fforward-paragraph
  19244. Move forward to end of paragraph.
  19245. With arg N, do it N times; negative arg -N means move backward N paragraphs.
  19246.  
  19247. A line which `paragraph-start' matches either separates paragraphs
  19248. (if `paragraph-separate' matches it also) or is the first line of a paragraph.
  19249. A paragraph end is the beginning of a line which is not part of the paragraph
  19250. to which the end of the previous line belongs, or the end of the buffer.
  19251. Fbackward-paragraph
  19252. Move backward to start of paragraph.
  19253. With arg N, do it N times; negative arg -N means move forward N paragraphs.
  19254.  
  19255. A paragraph start is the beginning of a line which is a
  19256. `first-line-of-paragraph' or which is ordinary text and follows a
  19257. paragraph-separating line; except: if the first real line of a
  19258. paragraph is preceded by a blank line, the paragraph starts at that
  19259. blank line.
  19260.  
  19261. See `forward-paragraph' for more information.
  19262. Fmark-paragraph
  19263. Put point at beginning of this paragraph, mark at end.
  19264. The paragraph marked is the one that contains point or follows point.
  19265. Fkill-paragraph
  19266. Kill forward to end of paragraph.
  19267. With arg N, kill forward to Nth end of paragraph;
  19268. negative arg -N means kill backward to Nth start of paragraph.
  19269. Fbackward-kill-paragraph
  19270. Kill back to start of paragraph.
  19271. With arg N, kill back to Nth start of paragraph;
  19272. negative arg -N means kill forward to Nth end of paragraph.
  19273. Ftranspose-paragraphs
  19274. Interchange this (or next) paragraph with previous one.
  19275. Fforward-sentence
  19276. Move forward to next `sentence-end'.  With argument, repeat.
  19277. With negative argument, move backward repeatedly to `sentence-beginning'.
  19278.  
  19279. The variable `sentence-end' is a regular expression that matches ends of
  19280. sentences.  Also, every paragraph boundary terminates sentences as well.
  19281. Fbackward-sentence
  19282. Move backward to start of sentence.  With arg, do it arg times.
  19283. See `forward-sentence' for more information.
  19284. Fkill-sentence
  19285. Kill from point to end of sentence.
  19286. With arg, repeat; negative arg -N means kill back to Nth start of sentence.
  19287. Fbackward-kill-sentence
  19288. Kill back from point to start of sentence.
  19289. With arg, repeat, or kill forward to Nth end of sentence if negative arg -N.
  19290. Fmark-end-of-sentence
  19291. Put mark at end of sentence.  Arg works as in `forward-sentence'.
  19292. Ftranspose-sentences
  19293. Interchange this (next) and previous sentence.
  19294. Feasy-menu-define
  19295. Define a menu bar submenu in maps MAPS, according to MENU.
  19296. The arguments SYMBOL and DOC are ignored; they are present for
  19297. compatibility only.  SYMBOL is not evaluated.  In other Emacs versions
  19298. these arguments may be used as a variable to hold the menu data, and a
  19299. doc string for that variable.
  19300.  
  19301. The first element of MENU must be a string.  It is the menu bar item name.
  19302. The rest of the elements are menu items.
  19303.  
  19304. A menu item is usually a vector of three elements:  [NAME CALLBACK ENABLE]
  19305.  
  19306. NAME is a string--the menu item name.
  19307.  
  19308. CALLBACK is a command to run when the item is chosen,
  19309. or a list to evaluate when the item is chosen.
  19310.  
  19311. ENABLE is an expression; the item is enabled for selection
  19312. whenever this expression's value is non-nil.
  19313.  
  19314. Alternatively, a menu item may have the form: 
  19315.  
  19316.    [ NAME CALLBACK [ KEYWORD ARG ] ... ]
  19317.  
  19318. Where KEYWORD is one of the symbol defined below.
  19319.  
  19320.    :keys KEYS
  19321.  
  19322. KEYS is a string; a complex keyboard equivalent to this menu item.
  19323.  
  19324.    :active ENABLE
  19325.  
  19326. ENABLE is an expression; the item is enabled for selection
  19327. whenever this expression's value is non-nil.
  19328.  
  19329.    :suffix NAME
  19330.  
  19331. NAME is a string; the name of an argument to CALLBACK.
  19332.  
  19333.    :style STYLE
  19334.    
  19335. STYLE is a symbol describing the type of menu item.  The following are
  19336. defined:  
  19337.  
  19338. toggle: A checkbox.  
  19339.         Currently just prepend the name with the string "Toggle ".
  19340. radio: A radio button. 
  19341. nil: An ordinary menu item.
  19342.  
  19343.    :selected SELECTED
  19344.  
  19345. SELECTED is an expression; the checkbox or radio button is selected
  19346. whenever this expression's value is non-nil.
  19347. Currently just disable radio buttons, no effect on checkboxes.
  19348.  
  19349. A menu item can be a string.  Then that string appears in the menu as
  19350. unselectable text.  A string consisting solely of hyphens is displayed
  19351. as a solid horizontal line.
  19352.  
  19353. A menu item can be a list.  It is treated as a submenu.
  19354. The first element should be the submenu name.  That's used as the
  19355. menu item in the top-level menu.  The cdr of the submenu list
  19356. is a list of menu items, as above.
  19357. Feasy-menu-add
  19358. Add MENU to the current menu bar.
  19359. Feasy-menu-remove
  19360. Remove MENU from the current menu bar.
  19361. Vlisp-mode-syntax-table
  19362.  
  19363. Vemacs-lisp-mode-syntax-table
  19364.  
  19365. Vlisp-mode-abbrev-table
  19366.  
  19367. Vshared-lisp-mode-map
  19368. Keymap for commands shared by all sorts of Lisp modes.
  19369. Vemacs-lisp-mode-map
  19370. Keymap for Emacs Lisp mode.
  19371. All commands in `shared-lisp-mode-map' are inherited by this map.
  19372. Femacs-lisp-byte-compile
  19373. Byte compile the file containing the current buffer.
  19374. Femacs-lisp-byte-compile-and-load
  19375. Byte-compile the current file (if it has changed), then load compiled code.
  19376. Femacs-lisp-mode
  19377. Major mode for editing Lisp code to run in Emacs.
  19378. Commands:
  19379. Delete converts tabs to spaces as it moves back.
  19380. Blank lines separate paragraphs.  Semicolons start comments.
  19381. \{emacs-lisp-mode-map}
  19382. Entry to this mode calls the value of `emacs-lisp-mode-hook'
  19383. if that value is non-nil.
  19384. Vlisp-mode-map
  19385. Keymap for ordinary Lisp mode.
  19386. All commands in `shared-lisp-mode-map' are inherited by this map.
  19387. Flisp-mode
  19388. Major mode for editing Lisp code for Lisps other than GNU Emacs Lisp.
  19389. Commands:
  19390. Delete converts tabs to spaces as it moves back.
  19391. Blank lines separate paragraphs.  Semicolons start comments.
  19392. \{lisp-mode-map}
  19393. Note that `run-lisp' may be used either to start an inferior Lisp job
  19394. or to switch back to an existing one.
  19395.  
  19396. Entry to this mode calls the value of `lisp-mode-hook'
  19397. if that value is non-nil.
  19398. Flisp-send-defun
  19399. Send the current defun to the Lisp process made by \[run-lisp].
  19400. Vlisp-interaction-mode-map
  19401. Keymap for Lisp Interaction mode.
  19402. All commands in `shared-lisp-mode-map' are inherited by this map.
  19403. Flisp-interaction-mode
  19404. Major mode for typing and evaluating Lisp forms.
  19405. Like Lisp mode except that \[eval-print-last-sexp] evals the Lisp expression
  19406. before point, and prints its value into the buffer, advancing point.
  19407.  
  19408. Commands:
  19409. Delete converts tabs to spaces as it moves back.
  19410. Paragraphs are separated only by blank lines.
  19411. Semicolons start comments.
  19412. \{lisp-interaction-mode-map}
  19413. Entry to this mode calls the value of `lisp-interaction-mode-hook'
  19414. if that value is non-nil.
  19415. Feval-print-last-sexp
  19416. Evaluate sexp before point; print value into current buffer.
  19417. Feval-interactive
  19418. Like `eval' except that it transforms defvars to defconsts.
  19419. The evaluation of defcustom forms is forced.
  19420. Feval-last-sexp
  19421. Evaluate sexp before point; print value in minibuffer.
  19422. With argument, print output into current buffer.
  19423. Feval-defun
  19424. Evaluate defun that point is in or before.
  19425. Print value in minibuffer.
  19426. With argument, insert value in current buffer after the defun.
  19427. Flisp-indent-for-comment
  19428. Indent this line's comment appropriately, or insert an empty comment.
  19429. If adding a new comment on a blank line, use `block-comment-start' instead
  19430. of `comment-start' to open the comment.
  19431. Vlisp-indent-offset
  19432.  
  19433. Vlisp-indent-function
  19434.  
  19435. Flisp-indent-line
  19436. Indent current line as Lisp code.
  19437. With argument, indent any additional lines of the same expression
  19438. rigidly along with this one.
  19439. Fcalculate-lisp-indent
  19440. Return appropriate indentation for current line as Lisp code.
  19441. In usual case returns an integer: the column to indent to.
  19442. Can instead return a list, whose car is the column to indent to.
  19443. This means that following lines at the same level of indentation
  19444. should not necessarily be indented the same way.
  19445. The second element of the list is the buffer position
  19446. of the start of the containing expression.
  19447. Vlisp-body-indent
  19448. Number of columns to indent the second line of a `(def...)' form.
  19449. Findent-sexp
  19450. Indent each line of the list starting just after point.
  19451. If optional arg ENDPOS is given, indent each line, stopping when
  19452. ENDPOS is encountered.
  19453. Flisp-fill-paragraph
  19454. Like \[fill-paragraph], but handle Emacs Lisp comments.
  19455. If any of the current line is a comment, fill the comment or the
  19456. paragraph of it that point is in, preserving the comment's indentation
  19457. and initial semicolons.
  19458. Findent-code-rigidly
  19459. Indent all lines of code, starting in the region, sideways by ARG columns.
  19460. Does not affect lines starting inside comments or strings, assuming that
  19461. the start of the region is not inside them.
  19462.  
  19463. Called from a program, takes args START, END, COLUMNS and NOCHANGE-REGEXP.
  19464. The last is a regexp which, if matched at the beginning of a line,
  19465. means don't indent that line.
  19466. Vtext-mode-syntax-table
  19467. Syntax table used while in text mode.
  19468. Vtext-mode-abbrev-table
  19469. Abbrev table used while in text mode.
  19470. Vtext-mode-map
  19471. Keymap for Text mode.
  19472. Many other modes, such as Mail mode, Outline mode and Indented Text mode,
  19473. inherit all the commands defined in this map.
  19474. Ftext-mode
  19475. Major mode for editing text intended for humans to read.
  19476. Special commands:
  19477. \{text-mode-map}
  19478. Turning on Text mode calls the value of the variable `text-mode-hook',
  19479. if that value is non-nil.
  19480. Vindented-text-mode-map
  19481. Keymap for Indented Text mode.
  19482. All the commands defined in Text mode are inherited unless overridden.
  19483. Findented-text-mode
  19484. Major mode for editing text with indented paragraphs.
  19485. In this mode, paragraphs are delimited only by blank lines.
  19486. You can thus get the benefit of adaptive filling
  19487.  (see the variable `adaptive-fill-mode').
  19488. \{indented-text-mode-map}
  19489. Turning on `indented-text-mode' calls the value of the variable
  19490. `text-mode-hook', if that value is non-nil.
  19491. Fcenter-paragraph
  19492. Center each nonblank line in the paragraph at or after point.
  19493. See `center-line' for more info.
  19494. Fcenter-region
  19495. Center each nonblank line starting in the region.
  19496. See `center-line' for more info.
  19497. Fcenter-line
  19498. Center the line point is on, within the width specified by `fill-column'.
  19499. This means adjusting the indentation so that it equals
  19500. the distance between the end of the text and `fill-column'.
  19501. The argument NLINES says how many lines to center.
  19502. Vfill-individual-varying-indent
  19503. *Controls criterion for a new paragraph in `fill-individual-paragraphs'.
  19504. Non-nil means changing indent doesn't end a paragraph.
  19505. That mode can handle paragraphs with extra indentation on the first line,
  19506. but it requires separator lines between paragraphs.
  19507. A value of nil means that any change in indentation starts a new paragraph.
  19508. Vsentence-end-double-space
  19509. *Non-nil means a single space does not end a sentence.
  19510. This variable applies only to filling, not motion commands.  To
  19511. change the behavior of motion commands, see `sentence-end'.
  19512. Vcolon-double-space
  19513. *Non-nil means put two spaces after a colon when filling.
  19514. Vfill-paragraph-function
  19515. Mode-specific function to fill a paragraph, or nil if there is none.
  19516. If the function returns nil, then `fill-paragraph' does its normal work.
  19517. Fset-fill-prefix
  19518. Set the fill prefix to the current line up to point.
  19519. Filling expects lines to start with the fill prefix and
  19520. reinserts the fill prefix in each resulting line.
  19521. Vadaptive-fill-mode
  19522. *Non-nil means determine a paragraph's fill prefix from its text.
  19523. Vadaptive-fill-regexp
  19524. *Regexp to match text at start of line that constitutes indentation.
  19525. If Adaptive Fill mode is enabled, whatever text matches this pattern
  19526. on the second line of a paragraph is used as the standard indentation
  19527. for the paragraph.  If the paragraph has just one line, the indentation
  19528. is taken from that line.
  19529. Vadaptive-fill-function
  19530. *Function to call to choose a fill prefix for a paragraph.
  19531. This function is used when `adaptive-fill-regexp' does not match.
  19532. Fcurrent-fill-column
  19533. Return the fill-column to use for this line.
  19534. The fill-column to use for a buffer is stored in the variable `fill-column',
  19535. but can be locally modified by the `right-margin' text property, which is
  19536. subtracted from `fill-column'.
  19537.  
  19538. The fill column to use for a line is the first column at which the column
  19539. number equals or exceeds the local fill-column - right-margin difference.
  19540. Fcanonically-space-region
  19541. Remove extra spaces between words in region.
  19542. Leave one space between words, two at end of sentences or after colons
  19543. (depending on values of `sentence-end-double-space' and `colon-double-space').
  19544. Remove indentation from each line.
  19545. Ffill-context-prefix
  19546. Compute a fill prefix from the text between FROM and TO.
  19547. This uses the variables `adaptive-fill-prefix' and `adaptive-fill-function'.
  19548. If FIRST-LINE-REGEXP is non-nil, then when taking a prefix from the
  19549. first line, insist it must match FIRST-LINE-REGEXP.
  19550. Ffill-region-as-paragraph
  19551. Fill the region as one paragraph.
  19552. It removes any paragraph breaks in the region and extra newlines at the end,
  19553. indents and fills lines between the margins given by the
  19554. `current-left-margin' and `current-fill-column' functions.
  19555. It leaves point at the beginning of the line following the paragraph.
  19556.  
  19557. Normally performs justification according to the `current-justification'
  19558. function, but with a prefix arg, does full justification instead.
  19559.  
  19560. From a program, optional third arg JUSTIFY can specify any type of
  19561. justification.  Fourth arg NOSQUEEZE non-nil means not to make spaces
  19562. between words canonical before filling.  Fifth arg SQUEEZE-AFTER, if non-nil,
  19563. means don't canonicalize spaces before that position.
  19564.  
  19565. If `sentence-end-double-space' is non-nil, then period followed by one
  19566. space does not end a sentence, so don't break a line there.
  19567. Ffill-paragraph
  19568. Fill paragraph at or after point.  Prefix arg means justify as well.
  19569. If `sentence-end-double-space' is non-nil, then period followed by one
  19570. space does not end a sentence, so don't break a line there.
  19571.  
  19572. If `fill-paragraph-function' is non-nil, we call it (passing our
  19573. argument to it), and if it returns non-nil, we simply return its value.
  19574. Ffill-region
  19575. Fill each of the paragraphs in the region.
  19576. Prefix arg (non-nil third arg, if called from program) means justify as well.
  19577.  
  19578. Noninteractively, fourth arg NOSQUEEZE non-nil means to leave
  19579. whitespace other than line breaks untouched, and fifth arg TO-EOP
  19580. non-nil means to keep filling to the end of the paragraph (or next
  19581. hard newline, if `use-hard-newlines' is on).
  19582.  
  19583. If `sentence-end-double-space' is non-nil, then period followed by one
  19584. space does not end a sentence, so don't break a line there.
  19585. Ffill-paragraph-or-region
  19586. Fill the current region, if it's active; otherwise, fill the paragraph.
  19587. See `fill-paragraph' and `fill-region' for more information.
  19588. Vdefault-justification
  19589. *Method of justifying text not otherwise specified.
  19590. Possible values are `left', `right', `full', `center', or `none'.
  19591. The requested kind of justification is done whenever lines are filled.
  19592. The `justification' text-property  can locally override this variable.
  19593. This variable automatically becomes buffer-local when set in any fashion.
  19594. Fcurrent-justification
  19595. How should we justify this line?
  19596. This returns the value of the text-property `justification',
  19597. or the variable `default-justification' if there is no text-property.
  19598. However, it returns nil rather than `none' to mean "don't justify".
  19599. Fset-justification
  19600. Set the region's justification style.
  19601. The kind of justification to use is prompted for.
  19602. If the mark is not active, this command operates on the current paragraph.
  19603. If the mark is active, the region is used.  However, if the beginning and end
  19604. of the region are not at paragraph breaks, they are moved to the beginning and
  19605. end of the paragraphs they are in.
  19606. If `use-hard-newlines' is true, all hard newlines are taken to be paragraph
  19607. breaks.
  19608.  
  19609. When calling from a program, operates just on region between BEGIN and END,
  19610. unless optional fourth arg WHOLE-PAR is non-nil.  In that case bounds are
  19611. extended to include entire paragraphs as in the interactive command.
  19612. Fset-justification-none
  19613. Disable automatic filling for paragraphs in the region.
  19614. If the mark is not active, this applies to the current paragraph.
  19615. Fset-justification-left
  19616. Make paragraphs in the region left-justified.
  19617. This is usually the default, but see the variable `default-justification'.
  19618. If the mark is not active, this applies to the current paragraph.
  19619. Fset-justification-right
  19620. Make paragraphs in the region right-justified:
  19621. Flush at the right margin and ragged on the left.
  19622. If the mark is not active, this applies to the current paragraph.
  19623. Fset-justification-full
  19624. Make paragraphs in the region fully justified:
  19625. This makes lines flush on both margins by inserting spaces between words.
  19626. If the mark is not active, this applies to the current paragraph.
  19627. Fset-justification-center
  19628. Make paragraphs in the region centered.
  19629. If the mark is not active, this applies to the current paragraph.
  19630. Ffind-space-insertable-point
  19631. Search backward for a permissable point for inserting justification spaces
  19632. Fjustify-current-line
  19633. Do some kind of justification on this line.
  19634. Normally does full justification: adds spaces to the line to make it end at
  19635. the column given by `current-fill-column'.
  19636. Optional first argument HOW specifies alternate type of justification:
  19637. it can be `left', `right', `full', `center', or `none'.  
  19638. If HOW is t, will justify however the `current-justification' function says to.
  19639. If HOW is nil or missing, full justification is done by default.
  19640. Second arg EOP non-nil means that this is the last line of the paragraph, so
  19641. it will not be stretched by full justification.
  19642. Third arg NOSQUEEZE non-nil means to leave interior whitespace unchanged,
  19643. otherwise it is made canonical.
  19644. Funjustify-current-line
  19645. Remove justification whitespace from current line.
  19646. If the line is centered or right-justified, this function removes any
  19647. indentation past the left margin.  If the line is full-justified, it removes
  19648. extra spaces between words.  It does nothing in other justification modes.
  19649. Funjustify-region
  19650. Remove justification whitespace from region.
  19651. For centered or right-justified regions, this function removes any indentation
  19652. past the left margin from each line.  For full-justified lines, it removes 
  19653. extra spaces between words.  It does nothing in other justification modes.
  19654. Arguments BEGIN and END are optional; default is the whole buffer.
  19655. Ffill-nonuniform-paragraphs
  19656. Fill paragraphs within the region, allowing varying indentation within each.
  19657. This command divides the region into "paragraphs",
  19658. only at paragraph-separator lines, then fills each paragraph
  19659. using as the fill prefix the smallest indentation of any line
  19660. in the paragraph.
  19661.  
  19662. When calling from a program, pass range to fill as first two arguments.
  19663.  
  19664. Optional third and fourth arguments JUSTIFY and MAIL-FLAG:
  19665. JUSTIFY to justify paragraphs (prefix arg),
  19666. MAIL-FLAG for a mail message, i. e. don't fill header lines.
  19667. Ffill-individual-paragraphs
  19668. Fill paragraphs of uniform indentation within the region.
  19669. This command divides the region into "paragraphs",
  19670. treating every change in indentation level as a paragraph boundary,
  19671. then fills each paragraph using its indentation level as the fill prefix.
  19672.  
  19673. When calling from a program, pass range to fill as first two arguments.
  19674.  
  19675. Optional third and fourth arguments JUSTIFY and MAIL-FLAG:
  19676. JUSTIFY to justify paragraphs (prefix arg),
  19677. MAIL-FLAG for a mail message, i. e. don't fill header lines.
  19678. Vpi
  19679. The value of Pi (3.1415926...)
  19680. Ve
  19681. The value of e (2.7182818...)
  19682. Vdegrees-to-radians
  19683. Degrees to radian conversion constant
  19684. Vradians-to-degrees
  19685. Radian to degree conversion constant
  19686. Fdegrees-to-radians
  19687. Convert ARG from degrees to radians.
  19688. Fradians-to-degrees
  19689. Convert ARG from radians to degrees.
  19690. Vitimer-version
  19691. Version number of the itimer package.
  19692. Vitimer-list
  19693. List of all active itimers.
  19694. Vitimer-process
  19695. Process that drives all itimers, if a subprocess is being used.
  19696. Vitimer-timer
  19697. Emacs internal timer that drives the itimer system, if a subprocess
  19698. is not being used to drive the system.
  19699. Vitimer-timer-last-wakeup
  19700. The time the timer driver function last ran.
  19701. Vitimer-short-interval
  19702. Interval used for scheduling an event a very short time in the future.
  19703. Used internally to make the scheduler wake up early.
  19704. Unit is seconds.
  19705. Vitimer-next-wakeup
  19706. Itimer process will wakeup to service running itimers within this
  19707. many seconds.
  19708. Vitimer-edit-map
  19709. Keymap used when in Itimer Edit mode.
  19710. Fcheck-itimer
  19711. If VAR is not bound to an itimer, signal wrong-type-argument.
  19712. This is a macro.
  19713. Fcheck-itimer-coerce-string
  19714. If VAR is not bound to a string, look up the itimer that it names and
  19715. bind VAR to it.  Otherwise if VAR is not bound to an itimer, signal
  19716. wrong-type-argument.  This is a macro.
  19717. Fcheck-nonnegative-number
  19718. If VAR is not bound to a number, signal wrong-type-argument.
  19719. If VAR is not bound to a positive number, signal args-out-of-range.
  19720. This is a macro.
  19721. Fcheck-string
  19722. If VAR is not bound to a string, signal wrong-type-argument.
  19723. This is a macro.
  19724. Fitimerp
  19725. Returns non-nil iff OBJ is an itimer.
  19726. Fitimer-live-p
  19727. Returns non-nil iff OBJ is an itimer and is active.
  19728. ``Active'' means Emacs will run it when it expires.
  19729. `activate-timer' must be called on a itimer to make it active.
  19730. Itimers started with `start-itimer' are automatically active.
  19731. Fitimer-name
  19732. Returns the name of ITIMER.
  19733. Fitimer-value
  19734. Returns the number of seconds until ITIMER expires.
  19735. Fitimer-restart
  19736. Returns the value to which ITIMER will be set at restart.
  19737. nil is returned if this itimer doesn't restart.
  19738. Fitimer-function
  19739. Returns the function of ITIMER.
  19740. This function is called each time ITIMER expires.
  19741. Fitimer-is-idle
  19742. Returns non-nil if ITIMER is an idle timer.
  19743. Normal timers expire after a set interval.  Idle timers expire
  19744. only after Emacs has been idle for a specific interval.  ``Idle''
  19745. means no command events within the interval.
  19746. Fitimer-uses-arguments
  19747. Returns non-nil if the function of ITIMER will be called with arguments.
  19748. ITIMER's function is called with the arguments each time ITIMER expires.
  19749. The arguments themselves are retrievable with `itimer-function-arguments'.
  19750. Fitimer-function-arguments
  19751. Returns the function arguments of ITIMER as a list.
  19752. ITIMER's function is called with these argument each timer ITIMER expires.
  19753. Fset-itimer-value
  19754. Set the timeout value of ITIMER to be VALUE.
  19755. Itimer will expire is this many seconds.
  19756. If your version of Emacs supports floating point numbers then
  19757. VALUE can be a floating point number.  Otherwise it
  19758. must be an integer.
  19759. Returns VALUE.
  19760. Fset-itimer-restart
  19761. Set the restart value of ITIMER to be RESTART.
  19762. If RESTART is nil, ITIMER will not restart when it expires.
  19763. If your version of Emacs supports floating point numbers then
  19764. RESTART can be a floating point number.  Otherwise it
  19765. must be an integer.
  19766. Returns RESTART.
  19767. Fset-itimer-function
  19768. Set the function of ITIMER to be FUNCTION.
  19769. FUNCTION will be called when itimer expires.
  19770. Returns FUNCTION.
  19771. Fset-itimer-is-idle
  19772. Sets flag that says whether ITIMER is an idle timer.
  19773. If FLAG is non-nil, then ITIMER will eb considered an idle timer.
  19774. Returns FLAG.
  19775. Fset-itimer-uses-arguments
  19776. Sets flag that says whether the function of ITIMER is called with arguments.
  19777. If FLAG is non-nil, then the function will be called with one argument,
  19778. otherwise the function will be called with no arguments.
  19779. Returns FLAG.
  19780. Fset-itimer-function-arguments
  19781. Set the function arguments of ITIMER to be ARGUMENTS.
  19782. The function of ITIMER will be called with ARGUMENTS when itimer expires.
  19783. Returns ARGUMENTS.
  19784. Fget-itimer
  19785. Return itimer named NAME, or nil if there is none.
  19786. Fread-itimer
  19787. Read the name of an itimer from the minibuffer and return the itimer
  19788. associated with that name.  The user is prompted with PROMPT.
  19789. Optional second arg INITIAL-INPUT non-nil is inserted into the
  19790.   minibuffer as initial user input.
  19791. Fdelete-itimer
  19792. Deletes ITIMER.  ITIMER may be an itimer or the name of one.
  19793. Fstart-itimer
  19794. Start an itimer.
  19795. Arguments are
  19796.   NAME, FUNCTION, VALUE &optional RESTART, IS-IDLE, WITH-ARGS, &rest FUNCTION-ARGUMENTS.
  19797. NAME is an identifier for the itimer.  It must be a string.  If an itimer
  19798.   already exists with this name, NAME will be modified slightly to until
  19799.   it is unique.
  19800. FUNCTION should be a function (or symbol naming one).  It
  19801.   will be called each time the itimer expires with arguments of
  19802.   FUNCTION-ARGUMENTS.  The function can access the itimer that
  19803.   invoked it through the variable `current-itimer'.  If WITH-ARGS
  19804.   is nil then FUNCTION is called with no arguments.  This is for
  19805.   backward compatibility with older versions of the itimer
  19806.   package which always called FUNCTION with no arguments.
  19807. VALUE is the number of seconds until this itimer expires.
  19808.   If your version of Emacs supports floating point numbers then
  19809.   you can VALUE can be a floating point number.  Otherwise it
  19810.   must be an integer.
  19811. Optional fourth arg RESTART non-nil means that this itimer should be
  19812.   restarted automatically after its function is called.  Normally an itimer
  19813.   is deleted at expiration after its function has returned. 
  19814.   If non-nil RESTART should be a number indicating the value at which the
  19815.   itimer should be set at restart time.
  19816. Optional fifth arg IS-IDLE specified if this is an idle timer.
  19817.   Normal timers eexpire after a set interval.  Idle timers expire
  19818.   only after Emacs has been idle for specific interval.  ``Idle''
  19819.   means no command events within the interval.
  19820. Returns the newly created itimer.
  19821. Fmake-itimer
  19822. Create an unactivated itimer.
  19823. The itimer will not begin running until activated with `activate-itimer'.
  19824. Set the itimer's expire interval with `set-itimer-value'.
  19825. Set the itimer's function interval with `set-itimer-function'.
  19826. Once this is done, the timer can be activated.
  19827. Factivate-itimer
  19828. Activate ITIMER, which was previously created with `make-itimer'.
  19829. ITIMER will be added to the global list of running itimers,
  19830. its FUNCTION will be called when it expires, and so on.
  19831. Flist-itimers
  19832. Pop up a buffer containing a list of all itimers.
  19833. The major mode of the buffer is Itimer Edit mode.  This major mode provides
  19834. commands to manipulate itimers; see the documentation for
  19835. `itimer-edit-mode' for more information.
  19836. Fedit-itimers
  19837. Display a list of all itimers and select it for editing.
  19838. The major mode of the buffer containing the listing is Itimer Edit mode.
  19839. This major mode provides commands to manipulate itimers; see the documentation
  19840. for `itimer-edit-mode' for more information.
  19841. Fitimer-edit-mode
  19842. Major mode for manipulating itimers.
  19843. Attributes of running itimers are changed by moving the cursor to the
  19844. desired field and typing `s' to set that field.  The field will then be
  19845. set to the value read from the minibuffer.
  19846.  
  19847. Commands:
  19848. TAB    move forward a field
  19849. DEL    move backward a field
  19850. s      set a field
  19851. d      delete the selected itimer
  19852. x      start a new itimer
  19853. ?      help
  19854. Fitimer-edit-help
  19855. Help function for Itimer Edit.
  19856. Fitimer-edit-quit
  19857. End Itimer Edit.
  19858. Vauto-save-timeout
  19859. *Number of seconds idle time before auto-save.
  19860. Zero or nil means disable auto-saving due to idleness.
  19861.  
  19862. The actual amount of idle time between auto-saves is logarithmically related
  19863. to the size of the current buffer.  This variable is the number of seconds
  19864. after which an auto-save will happen when the current buffer is 50k or less;
  19865. the timeout will be 2 1/4 times this in a 200k buffer, 3 3/4 times this in a
  19866. 1000k buffer, and 4 1/2 times this in a 2000k buffer.
  19867.  
  19868. See also the variable `auto-save-interval', which controls auto-saving based
  19869. on the number of characters typed.
  19870. Vauto-gc-threshold
  19871. *GC when this many bytes have been consed since the last GC, 
  19872. and the user has been idle for `auto-save-timeout' seconds.
  19873. Fauto-save-itimer
  19874. For use as a itimer callback function.
  19875. Auto-saves and garbage-collects based on the size of the current buffer
  19876. and the value of `auto-save-timeout', `auto-gc-threshold', and the current
  19877. keyboard idle-time.
  19878. Vtoolbar-help-enabled
  19879. If non-nil help is echoed for toolbar buttons.
  19880. Vtoolbar-icon-directory
  19881. Location of standard toolbar icon bitmaps.
  19882. Ftoolbar-make-button-list
  19883. Calls make-glyph on each arg and returns a list of the results.
  19884. Vtoolbar-map
  19885. Keymap consulted for mouse-clicks over a toolbar.
  19886. Fpress-toolbar-button
  19887. Press a toolbar button.  This only changes its appearance.
  19888. Call function stored in `toolbar-blank-press-function,' if any, with EVENT as
  19889. an argument if press is over a blank area of the toolbar.
  19890. Frelease-and-activate-toolbar-button
  19891. Release a toolbar button and activate its callback.
  19892. Call function stored in `toolbar-blank-release-function,' if any, with EVENT
  19893. as an argument if release is over a blank area of the toolbar.
  19894. Frelease-toolbar-button
  19895. Release all pressed toolbar buttons.
  19896. Fscrollbar-char-left
  19897. Function called when the char-left arrow on the scrollbar is clicked.
  19898. This is the little arrow to the left of the scrollbar.  One argument is
  19899. passed, the scrollbar's window.  You can advise this function to
  19900. change the scrollbar behavior.
  19901. Fscrollbar-char-right
  19902. Function called when the char-right arrow on the scrollbar is clicked.
  19903. This is the little arrow to the right of the scrollbar.  One argument is
  19904. passed, the scrollbar's window.  You can advise this function to
  19905. change the scrollbar behavior.
  19906. Fscrollbar-page-left
  19907. Function called when the user gives the "page-left" scrollbar action.
  19908. (The way this is done can vary from scrollbar to scrollbar.) One argument is
  19909. passed, the scrollbar's window.  You can advise this function to
  19910. change the scrollbar behavior.
  19911. Fscrollbar-page-right
  19912. Function called when the user gives the "page-right" scrollbar action.
  19913. (The way this is done can vary from scrollbar to scrollbar.) One argument is
  19914. passed, the scrollbar's window.  You can advise this function to
  19915. change the scrollbar behavior.
  19916. Fscrollbar-to-left
  19917. Function called when the user gives the "to-left" scrollbar action.
  19918. (The way this is done can vary from scrollbar to scrollbar.). One argument is
  19919. passed, the scrollbar's window.  You can advise this function to
  19920. change the scrollbar behavior.
  19921. Fscrollbar-to-right
  19922. Function called when the user gives the "to-right" scrollbar action.
  19923. (The way this is done can vary from scrollbar to scrollbar.). One argument is
  19924. passed, the scrollbar's window.  You can advise this function to
  19925. change the scrollbar behavior.
  19926. Fscrollbar-horizontal-drag
  19927. Function called when the user drags the horizontal scrollbar thumb.
  19928. One argument is passed, a cons containing the scrollbar's window and a value
  19929. representing how many columns the thumb is slid over.  You can advise
  19930. this function to change the scrollbar behavior.
  19931. Fkill-this-buffer
  19932. Kill the current buffer.
  19933. Fset-menubar-dirty-flag
  19934. Tell XEmacs that the menubar has to be updated.
  19935. NOTE: XEmacs now recognizes when you set a different value for
  19936. `current-menubar'.  You *only* need to call this function if you
  19937. destructively modify a part of the menubar and don't set `current-menubar'.
  19938. Note that all the functions that modify a menu call this automatically.
  19939. Fset-menubar
  19940. Set the default menubar to be MENUBAR.
  19941. See `current-menubar' for a description of the syntax of a menubar.
  19942. Fset-buffer-menubar
  19943. Set the buffer-local menubar to be MENUBAR.
  19944. See `current-menubar' for a description of the syntax of a menubar.
  19945. Ffind-menu-item
  19946. Search MENUBAR for item given by ITEM-PATH-LIST starting from PARENT.
  19947. Returns (ITEM . PARENT), where PARENT is the immediate parent of
  19948.  the item found.
  19949. If the item does not exist, the car of the returned value is nil.
  19950. If some menu in the ITEM-PATH-LIST does not exist, an error is signalled.
  19951. Fadd-menu-button
  19952. Add a menu item to some menu, creating the menu first if necessary.
  19953. If the named item exists already, it is changed.
  19954. MENU-PATH identifies the menu under which the new menu item should be inserted.
  19955.  It is a list of strings; for example, ("File") names the top-level "File"
  19956.  menu.  ("File" "Foo") names a hypothetical submenu of "File".
  19957. MENU-LEAF is a menubar leaf node.  See the documentation of `current-menubar'.
  19958. BEFORE, if provided, is the name of a menu item before which this item should
  19959.  be added, if this item is not on the menu already.  If the item is already
  19960.  present, it will not be moved.
  19961. Fadd-submenu
  19962. Add a menu to the menubar or one of its submenus.
  19963. If the named menu exists already, it is changed.
  19964. MENU-PATH identifies the menu under which the new menu should be inserted.
  19965.  It is a list of strings; for example, ("File") names the top-level "File"
  19966.  menu.  ("File" "Foo") names a hypothetical submenu of "File".
  19967.  If MENU-PATH is nil, then the menu will be added to the menubar itself.
  19968. SUBMENU is the new menu to add.
  19969.  See the documentation of `current-menubar' for the syntax.
  19970. BEFORE, if provided, is the name of a menu before which this menu should
  19971.  be added, if this menu is not on its parent already.  If the menu is already
  19972.  present, it will not be moved.
  19973. Fdelete-menu-item
  19974. Remove the named menu item from the menu hierarchy.
  19975. PATH is a list of strings which identify the position of the menu item in 
  19976. the menu hierarchy.  The documentation of `add-submenu' describes menu-paths.
  19977. Frelabel-menu-item
  19978. Change the string of the specified menu item.
  19979. PATH is a list of strings which identify the position of the menu item in 
  19980. the menu hierarchy.  ("File" "Save") means the menu item called "Save"
  19981. under the toplevel "File" menu.  ("Menu" "Foo" "Item") means the 
  19982. menu item called "Item" under the "Foo" submenu of "Menu".
  19983. NEW-NAME is the string that the menu item will be printed as from now on.
  19984. Fenable-menu-item
  19985. Make the named menu item be selectable.
  19986. PATH is a list of strings which identify the position of the menu item in 
  19987. the menu hierarchy.  ("File" "Save") means the menu item called "Save"
  19988. under the toplevel "File" menu.  ("Menu" "Foo" "Item") means the 
  19989. menu item called "Item" under the "Foo" submenu of "Menu".
  19990. Fdisable-menu-item
  19991. Make the named menu item be unselectable.
  19992. PATH is a list of strings which identify the position of the menu item in 
  19993. the menu hierarchy.  ("File" "Save") means the menu item called "Save"
  19994. under the toplevel "File" menu.  ("Menu" "Foo" "Item") means the 
  19995. menu item called "Item" under the "Foo" submenu of "Menu".
  19996. Fselect-toggle-menu-item
  19997. Make the named toggle- or radio-style menu item be in the `selected' state.
  19998. PATH is a list of strings which identify the position of the menu item in 
  19999. the menu hierarchy.  ("File" "Save") means the menu item called "Save"
  20000. under the toplevel "File" menu.  ("Menu" "Foo" "Item") means the 
  20001. menu item called "Item" under the "Foo" submenu of "Menu".
  20002. Fdeselect-toggle-menu-item
  20003. Make the named toggle- or radio-style menu item be in the `unselected' state.
  20004. PATH is a list of strings which identify the position of the menu item in 
  20005. the menu hierarchy.  ("File" "Save") means the menu item called "Save"
  20006. under the toplevel "File" menu.  ("Menu" "Foo" "Item") means the 
  20007. menu item called "Item" under the "Foo" submenu of "Menu".
  20008. Fget-popup-menu-response
  20009. Pop up the given menu and wait for a response.
  20010. This blocks until the response is received, and returns the misc-user
  20011. event that encapsulates the response.  To execute it, you can do
  20012.   (funcall (event-function response) (event-object response))
  20013. If no response was received, nil is returned.
  20014.  
  20015. MENU-DESC and EVENT are as in the call to `popup-menu'.
  20016. Fpopup-menu-and-execute-in-window
  20017. Pop up the given menu and execute its response in EVENT's window.
  20018. This blocks until the response is received, temporarily selects
  20019. EVENT's window, and executes the command specified in the response.
  20020. EVENT can also be a window.  See `popup-menu' for the semantics of
  20021. MENU-DESC.
  20022. Fyes-or-no-p-dialog-box
  20023. Ask user a "y or n" question with a popup dialog box.
  20024. Returns t if answer is "yes".
  20025. Takes one argument, which is the string to display to ask the question.
  20026. Fyes-or-no-p-maybe-dialog-box
  20027. Ask user a yes-or-no question.  Return t if answer is yes.
  20028. The question is asked with a dialog box or the minibuffer, as appropriate.
  20029. Takes one argument, which is the string to display to ask the question.
  20030. It should end in a space; `yes-or-no-p' adds `(yes or no) ' to it.
  20031. The user must confirm the answer with RET,
  20032. and can edit it until it as been confirmed.
  20033. Fy-or-n-p-maybe-dialog-box
  20034. Ask user a "y or n" question.  Return t if answer is "y".
  20035. Takes one argument, which is the string to display to ask the question.
  20036. The question is asked with a dialog box or the minibuffer, as appropriate.
  20037. It should end in a space; `y-or-n-p' adds `(y or n) ' to it.
  20038. No confirmation of the answer is requested; a single character is enough.
  20039. Also accepts Space to mean yes, or Delete to mean no.
  20040. Fget-dialog-box-response
  20041. Pop up a dialog box and return user's selection.
  20042. POSITION specifies which frame to use.
  20043. This is normally an event or a window or frame.
  20044. If POSITION is t or nil, it means to use the frame the mouse is on.
  20045. The dialog box appears in the middle of the specified frame.
  20046.  
  20047. CONTENTS specifies the alternatives to display in the dialog box.
  20048. It is a list of the form (TITLE ITEM1 ITEM2...).
  20049. Each ITEM is a cons cell (STRING . VALUE).
  20050. The return value is VALUE from the chosen item.
  20051.  
  20052. An ITEM may also be just a string--that makes a nonselectable item.
  20053. An ITEM may also be nil--that means to put all preceding items
  20054. on the left of the dialog box and all following items on the right.
  20055. Fmessage-box
  20056. Display a message, in a dialog box if possible.
  20057. If the selected device has no dialog-box support, use the echo area.
  20058. The arguments are the same as to `format'.
  20059.  
  20060. If the only argument is nil, clear any existing message; let the
  20061. minibuffer contents show.
  20062. Fmessage-or-box
  20063. Display a message in a dialog box or in the echo area.
  20064. If this command was invoked with the mouse, use a dialog box.
  20065. Otherwise, use the echo area.
  20066. The arguments are the same as to `format'.
  20067.  
  20068. If the only argument is nil, clear any existing message; let the
  20069. minibuffer contents show.
  20070. Fcompose-region
  20071. Compose characters in the current region into one composite character.
  20072. From a Lisp program, pass two arguments, START to END.
  20073. The composite character replaces the composed characters.
  20074. BUFFER defaults to the current buffer if omitted.
  20075. Fdecompose-region
  20076. Decompose any composite characters in the current region.
  20077. From a Lisp program, pass two arguments, START to END.
  20078. This converts each composite character into one or more characters,
  20079. the individual characters out of which the composite character was formed.
  20080. Non-composite characters are left as-is.  BUFFER defaults to the current
  20081. buffer if omitted.
  20082. Fcharsets-in-region
  20083. Return a list of the charsets in the region between START and END.
  20084. BUFFER defaults to the current buffer if omitted.
  20085. Fcharsets-in-string
  20086. Return a list of the charsets in STRING.
  20087. Fcharset-graphic
  20088. Return the `graphic' property of CHARSET.
  20089. See `make-charset'.
  20090. Fcharset-final
  20091. Return the final byte of the ISO 2022 escape sequence designating CHARSET.
  20092. Fcharset-chars
  20093. Return the number of characters per dimension of CHARSET.
  20094. Fcharset-columns
  20095. Return the number of display columns per character of CHARSET.
  20096. This only applies to TTY mode (under X, the actual display width can
  20097. be automatically determined).
  20098. Fcharset-direction
  20099. Return the display direction (`l2r' or `r2l') of CHARSET.
  20100. Fcharset-registry
  20101. Return the registry of CHARSET.
  20102. This is a regular expression matching the registry field of fonts
  20103. that can display the characters in CHARSET.
  20104. Fcharset-ccl-program
  20105. Return the CCL program of CHARSET.
  20106. See `make-charset'.
  20107. Fmodify-coding-system-alist
  20108. Modify one of look up tables for finding a coding system on I/O operation.
  20109. There are three of such tables, `file-coding-system-alist',
  20110. `process-coding-system-alist', and `network-coding-system-alist'.
  20111.  
  20112. TARGET-TYPE specifies which of them to modify.
  20113. If it is `file', it affects `file-coding-system-alist' (which see).
  20114. If it is `process', it affects `process-coding-system-alist' (which see).
  20115. If it is `network', it affects `network-codign-system-alist' (which see).
  20116.  
  20117. REGEXP is a regular expression matching a target of I/O operation.
  20118. The target is a file name if TARGET-TYPE is `file', a program name if
  20119. TARGET-TYPE is `process', or a network service name or a port number
  20120. to connect to if TARGET-TYPE is `network'.
  20121.  
  20122. CODING-SYSTEM is a coding system to perform code conversion on the I/O
  20123. operation, or a cons cell (DECODING . ENCODING) specifying the coding systems
  20124. for decoding and encoding respectively,
  20125. or a function symbol which, when called, returns such a cons cell.
  20126. Fkeyboard-coding-system
  20127. Return coding-system of what is sent from terminal keyboard.
  20128. Fset-keyboard-coding-system
  20129. Set the coding system used for TTY keyboard input. Currently broken.
  20130. Fterminal-coding-system
  20131. Return coding-system of your terminal.
  20132. Fset-terminal-coding-system
  20133. Set the coding system used for TTY display output. Currently broken.
  20134. Fset-pathname-coding-system
  20135. Set the coding system used for file system path names.
  20136. Fwhat-coding-system
  20137. Show the encoding of text in the region.
  20138. This function is meant to be called interactively;
  20139. from a Lisp program, use `detect-coding-region' instead.
  20140. Fdecode-coding-string
  20141. Decode the string STR which is encoded in CODING-SYSTEM.
  20142. Does not modify STR.  Returns the decoded string on successful conversion.
  20143. Fencode-coding-string
  20144. Encode the string STR using CODING-SYSTEM.
  20145. Does not modify STR.  Returns the encoded string on successful conversion.
  20146. Fcoding-system-mnemonic
  20147. Return the 'mnemonic property of CODING-SYSTEM.
  20148. Fcoding-system-eol-type
  20149. Return the 'eol-type property of CODING-SYSTEM.
  20150. Fcoding-system-eol-lf
  20151. Return the 'eol-lf property of CODING-SYSTEM.
  20152. Fcoding-system-eol-crlf
  20153. Return the 'eol-crlf property of CODING-SYSTEM.
  20154. Fcoding-system-eol-cr
  20155. Return the 'eol-cr property of CODING-SYSTEM.
  20156. Fcoding-system-post-read-conversion
  20157. Return the 'post-read-conversion property of CODING-SYSTEM.
  20158. Fcoding-system-pre-write-conversion
  20159. Return the 'pre-write-conversion property of CODING-SYSTEM.
  20160. Fcoding-system-force-on-output
  20161. Return the 'force-on-output property of CODING-SYSTEM for the specified REGISTER.
  20162. Fcoding-system-short
  20163. Return the 'short property of CODING-SYSTEM.
  20164. Fcoding-system-no-ascii-eol
  20165. Return the 'no-ascii-eol property of CODING-SYSTEM.
  20166. Fcoding-system-no-ascii-cntl
  20167. Return the 'no-ascii-cntl property of CODING-SYSTEM.
  20168. Fcoding-system-seven
  20169. Return the 'seven property of CODING-SYSTEM.
  20170. Fcoding-system-lock-shift
  20171. Return the 'lock-shift property of CODING-SYSTEM.
  20172. Fcoding-system-no-iso6429
  20173. Return the 'no-iso6429 property of CODING-SYSTEM.
  20174. Fcoding-system-ccl-encode
  20175. Return the CCL 'encode property of CODING-SYSTEM.
  20176. Fcoding-system-ccl-decode
  20177. Return the CCL 'decode property of CODING-SYSTEM.
  20178. Vbuffer-file-coding-system-for-read
  20179. Coding system used when reading a file.
  20180. This provides coarse-grained control; for finer-grained control, use
  20181. `file-coding-system-alist'.  From a Lisp program, if you wish to
  20182. unilaterally specify the coding system used for one particular
  20183. operation, you should bind the variable `coding-system-for-read'
  20184. rather than setting this variable, which is intended to be used for
  20185. global environment specification.
  20186. Vfile-coding-system-alist
  20187. Alist to decide a coding system to use for a file I/O operation.
  20188. The format is ((PATTERN . VAL) ...),
  20189. where PATTERN is a regular expression matching a file name,
  20190. VAL is a coding system, a cons of coding systems, or a function symbol.
  20191. If VAL is a coding system, it is used for both decoding and encoding
  20192. the file contents.
  20193. If VAL is a cons of coding systems, the car part is used for decoding,
  20194. and the cdr part is used for encoding.
  20195. If VAL is a function symbol, the function must return a coding system
  20196. or a cons of coding systems which are used as above.
  20197.  
  20198. This overrides the more general specification in
  20199. `buffer-file-coding-system-for-read', but is overridden by
  20200. `coding-system-for-read'.
  20201. Fset-buffer-file-coding-system
  20202. Set buffer-file-coding-system of the current buffer to CODING-SYSTEM.
  20203. If optional argument FORCE (interactively, the prefix argument) is not
  20204. given, attempt to match the EOL type of the new coding system to
  20205. the current value of `buffer-file-coding-system'.
  20206. Fset-buffer-file-coding-system-for-read
  20207. Set the coding system used when reading in a file.
  20208. This is equivalent to setting the variable
  20209. `buffer-file-coding-system-for-read'.  You can also use
  20210. `file-coding-system-alist' to specify the coding system for
  20211. particular files.
  20212. Fset-default-buffer-file-coding-system
  20213. Set the default value of `buffer-file-coding-system' to CODING-SYSTEM.
  20214. The default value is used both for buffers without associated files
  20215. and for files with no apparent coding system (i.e. primarily ASCII).
  20216. See `buffer-file-coding-system' for more information.
  20217. Ffind-file-coding-system-for-read-from-filename
  20218. Look up coding system to read a file in `file-coding-system-alist'.
  20219. The return value will be nil (no applicable entry) or a coding system
  20220. object (the entry specified a coding system).
  20221. Ffind-file-coding-system-for-write-from-filename
  20222. Look up coding system to write a file in `file-coding-system-alist'.
  20223. The return value will be nil (no applicable entry) or a coding system
  20224. object (the entry specified a coding system).
  20225. Fconvert-mbox-coding-system
  20226. Decoding function for Unix mailboxes.
  20227. Does separate detection and decoding on each message, since each
  20228. message might be in a different encoding.
  20229. Ffind-coding-system-magic-cookie
  20230. Look for the coding-system magic cookie in the current buffer.
  20231.  
  20232. Fload
  20233. Execute a file of Lisp code named FILE.
  20234. First tries FILE with .elc appended, then tries with .el,
  20235.  then tries FILE unmodified.  Searches directories in load-path.
  20236. If optional second arg NOERROR is non-nil,
  20237.  report no error if FILE doesn't exist.
  20238. Print messages at start and end of loading unless
  20239.  optional third arg NOMESSAGE is non-nil.
  20240. If optional fourth arg NOSUFFIX is non-nil, don't try adding
  20241.  suffixes .elc or .el to the specified name FILE.
  20242. Return t if file exists.
  20243. Vinsert-file-contents-access-hook
  20244. A hook to make a file accessible before reading it.
  20245. `insert-file-contents' calls this hook before doing anything else.
  20246. Called with two arguments: FILENAME and VISIT, the same as the
  20247. corresponding arguments in the call to `insert-file-contents'.
  20248. Vinsert-file-contents-pre-hook
  20249. A special hook to decide the coding system used for reading in a file.
  20250.  
  20251. Before reading a file, `insert-file-contents' calls the functions on
  20252. this hook with arguments FILENAME and VISIT, the same as the
  20253. corresponding arguments in the call to `insert-file-contents'.  In
  20254. these functions, you may refer to the global variable
  20255. `buffer-file-coding-system-for-read'.
  20256.  
  20257. The return value of the functions should be either
  20258.  
  20259. -- nil
  20260. -- A coding system or a symbol denoting it, indicating the coding system
  20261.    to be used for reading the file
  20262. -- A list of two elements (absolute pathname and length of data inserted),
  20263.    which is used as the return value to `insert-file-contents'.  In this
  20264.    case, `insert-file-contents' assumes that the function has inserted
  20265.    the file for itself and suppresses further reading.
  20266.  
  20267. If any function returns non-nil, the remaining functions are not called.
  20268. Vinsert-file-contents-error-hook
  20269. A hook to set `buffer-file-coding-system' when a read error has occurred.
  20270.  
  20271. When a file error (e.g. nonexistent file) occurs while read a file,
  20272. `insert-file-contents' calls the functions on this hook with three
  20273. arguments: FILENAME and VISIT (the same as the corresponding arguments
  20274. in the call to `insert-file-contents') and a cons (SIGNALED-CONDITIONS
  20275. . SIGNAL-DATA).
  20276.  
  20277. After calling this hook, the error is signalled for real and
  20278. propagates to the caller of `insert-file-contents'.
  20279. Vinsert-file-contents-post-hook
  20280. A hook to set `buffer-file-coding-system' for the current buffer.
  20281.  
  20282. After successful reading, `insert-file-contents' calls the functions
  20283. on this hook with four arguments: FILENAME and VISIT (the same as the
  20284. corresponding arguments in the call to `insert-file-contents'),
  20285. CODING-SYSTEM (the actual coding system used to decode the file), and
  20286. a cons of absolute pathname and length of data inserted (the same
  20287. thing as will be returned from `insert-file-contents').
  20288. Finsert-file-contents
  20289. Insert contents of file FILENAME after point.
  20290. Returns list of absolute file name and length of data inserted.
  20291. If second argument VISIT is non-nil, the buffer's visited filename
  20292. and last save file modtime are set, and it is marked unmodified.
  20293. If visiting and the file does not exist, visiting is completed
  20294. before the error is signaled.
  20295.  
  20296. The optional third and fourth arguments BEG and END
  20297. specify what portion of the file to insert.
  20298. If VISIT is non-nil, BEG and END must be nil.
  20299. If optional fifth argument REPLACE is non-nil,
  20300. it means replace the current buffer contents (in the accessible portion)
  20301. with the file contents.  This is better than simply deleting and inserting
  20302. the whole thing because (1) it preserves some marker positions
  20303. and (2) it puts less data in the undo list.
  20304.  
  20305. NOTE: When Mule support is enabled, the REPLACE argument is
  20306. currently ignored.
  20307.  
  20308. The coding system used for decoding the file is determined as follows:
  20309.  
  20310. 1. `coding-system-for-read', if non-nil.
  20311. 2. The result of `insert-file-contents-pre-hook', if non-nil.
  20312. 3. The matching value for this filename from
  20313.    `file-coding-system-alist', if any.
  20314. 4. `buffer-file-coding-system-for-read', if non-nil.
  20315. 5. The coding system 'no-conversion.
  20316.  
  20317. If a local value for `buffer-file-coding-system' in the current buffer
  20318. does not exist, it is set to the coding system which was actually used
  20319. for reading.
  20320.  
  20321. See also `insert-file-contents-access-hook',
  20322. `insert-file-contents-pre-hook', `insert-file-contents-error-hook',
  20323. and `insert-file-contents-post-hook'.
  20324. Vwrite-region-pre-hook
  20325. A special hook to decide the coding system used for writing out a file.
  20326.  
  20327. Before writing a file, `write-region' calls the functions on this hook
  20328. with arguments START, END, FILENAME, APPEND, VISIT, and CODING-SYSTEM,
  20329. the same as the corresponding arguments in the call to
  20330. `write-region'.
  20331.  
  20332. The return value of the functions should be either
  20333.  
  20334. -- nil
  20335. -- A coding system or a symbol denoting it, indicating the coding system
  20336.    to be used for reading the file
  20337. -- A list of two elements (absolute pathname and length of data written),
  20338.    which is used as the return value to `write-region'.  In this
  20339.    case, `write-region' assumes that the function has written
  20340.    the file for itself and suppresses further writing.
  20341.  
  20342. If any function returns non-nil, the remaining functions are not called.
  20343. Vwrite-region-post-hook
  20344. A hook called by `write-region' after a file has been written out.
  20345.  
  20346. The functions on this hook are called with arguments START, END,
  20347. FILENAME, APPEND, VISIT, and CODING-SYSTEM, the same as the
  20348. corresponding arguments in the call to `write-region'.
  20349. Fwrite-region
  20350. Write current region into specified file.
  20351. By default the file's existing contents are replaced by the specified region.
  20352. When called from a program, takes three arguments:
  20353. START, END and FILENAME.  START and END are buffer positions.
  20354. Optional fourth argument APPEND if non-nil means
  20355.   append to existing file contents (if any).
  20356. Optional fifth argument VISIT if t means
  20357.   set last-save-file-modtime of buffer to this file's modtime
  20358.   and mark buffer not modified.
  20359. If VISIT is a string, it is a second file name;
  20360.   the output goes to FILENAME, but the buffer is marked as visiting VISIT.
  20361.   VISIT is also the file name to lock and unlock for clash detection.
  20362. If VISIT is neither t nor nil nor a string,
  20363.   that means do not print the "Wrote file" message.
  20364. The optional sixth arg LOCKNAME, if non-nil, specifies the name to
  20365.   use for locking and unlocking, overriding FILENAME and VISIT.
  20366. Kludgy feature: if START is a string, then that string is written
  20367. to the file, instead of any buffer contents, and END is ignored.
  20368. Optional seventh argument CODING-SYSTEM specifies the coding system
  20369.   used to encode the text when it is written out, and defaults to
  20370.   the value of `buffer-file-coding-system' in the current buffer.
  20371.   Interactively, with a prefix arg, you will be prompted for the
  20372.   coding system.
  20373. See also `write-region-pre-hook' and `write-region-post-hook'.
  20374. Vprocess-coding-system-alist
  20375. Alist to decide a coding system to use for a process I/O operation.
  20376. The format is ((PATTERN . VAL) ...),
  20377. where PATTERN is a regular expression matching a program name,
  20378. VAL is a coding system, a cons of coding systems, or a function symbol.
  20379. If VAL is a coding system, it is used for both decoding what received
  20380. from the program and encoding what sent to the program.
  20381. If VAL is a cons of coding systems, the car part is used for decoding,
  20382. and the cdr part is used for encoding.
  20383. If VAL is a function symbol, the function must return a coding system
  20384. or a cons of coding systems which are used as above.
  20385. Fcall-process
  20386. Call PROGRAM synchronously in separate process.
  20387. The program's input comes from file INFILE (nil means `/dev/null').
  20388. Insert output in BUFFER before point; t means current buffer;
  20389.  nil for BUFFER means discard it; 0 means discard and don't wait.
  20390. BUFFER can also have the form (REAL-BUFFER STDERR-FILE); in that case,
  20391. REAL-BUFFER says what to do with standard output, as above,
  20392. while STDERR-FILE says what to do with standard error in the child.
  20393. STDERR-FILE may be nil (discard standard error output),
  20394. t (mix it with ordinary output), or a file name string.
  20395.  
  20396. Fourth arg DISPLAYP non-nil means redisplay buffer as output is inserted.
  20397. Remaining arguments are strings passed as command arguments to PROGRAM.
  20398.  
  20399. If BUFFER is 0, `call-process' returns immediately with value nil.
  20400. Otherwise it waits for PROGRAM to terminate and returns a numeric exit status
  20401.  or a signal description string.
  20402. If you quit, the process is killed with SIGINT, or SIGKILL if you
  20403.  quit again.
  20404. Fcall-process-region
  20405. Send text from START to END to a synchronous process running PROGRAM.
  20406. Delete the text if fourth arg DELETEP is non-nil.
  20407.  
  20408. Insert output in BUFFER before point; t means current buffer;
  20409.  nil for BUFFER means discard it; 0 means discard and don't wait.
  20410. BUFFER can also have the form (REAL-BUFFER STDERR-FILE); in that case,
  20411. REAL-BUFFER says what to do with standard output, as above,
  20412. while STDERR-FILE says what to do with standard error in the child.
  20413. STDERR-FILE may be nil (discard standard error output),
  20414. t (mix it with ordinary output), or a file name string.
  20415.  
  20416. Sixth arg DISPLAYP non-nil means redisplay buffer as output is inserted.
  20417. Remaining args are passed to PROGRAM at startup as command args.
  20418.  
  20419. If BUFFER is 0, returns immediately with value nil.
  20420. Otherwise waits for PROGRAM to terminate
  20421. and returns a numeric exit status or a signal description string.
  20422. If you quit, the process is first killed with SIGINT, then with SIGKILL if
  20423. you quit again before the process exits.
  20424. Fstart-process
  20425. Start a program in a subprocess.  Return the process object for it.
  20426. Args are NAME BUFFER PROGRAM &rest PROGRAM-ARGS
  20427. NAME is name for process.  It is modified if necessary to make it unique.
  20428. BUFFER is the buffer or (buffer-name) to associate with the process.
  20429.  Process output goes at end of that buffer, unless you specify
  20430.  an output stream or filter function to handle the output.
  20431.  BUFFER may be also nil, meaning that this process is not associated
  20432.  with any buffer
  20433. Third arg is program file name.  It is searched for as in the shell.
  20434. Remaining arguments are strings to give program as arguments.
  20435. INCODE and OUTCODE specify the coding-system objects used in input/output
  20436.  from/to the process.
  20437. Vnetwork-coding-system-alist
  20438. Alist to decide a coding system to use for a network I/O operation.
  20439. The format is ((PATTERN . VAL) ...),
  20440. where PATTERN is a regular expression matching a network service name
  20441. or is a port number to connect to,
  20442. VAL is a coding system, a cons of coding systems, or a function symbol.
  20443. If VAL is a coding system, it is used for both decoding what received
  20444. from the network stream and encoding what sent to the network stream.
  20445. If VAL is a cons of coding systems, the car part is used for decoding,
  20446. and the cdr part is used for encoding.
  20447. If VAL is a function symbol, the function must return a coding system
  20448. or a cons of coding systems which are used as above.
  20449.  
  20450. See also the function `find-operation-coding-system'.
  20451. Fopen-network-stream
  20452. Open a TCP connection for a service to a host.
  20453. Returns a subprocess-object to represent the connection.
  20454. Input and output work as for subprocesses; `delete-process' closes it.
  20455. Args are NAME BUFFER HOST SERVICE.
  20456. NAME is name for process.  It is modified if necessary to make it unique.
  20457. BUFFER is the buffer (or buffer-name) to associate with the process.
  20458.  Process output goes at end of that buffer, unless you specify
  20459.  an output stream or filter function to handle the output.
  20460.  BUFFER may be also nil, meaning that this process is not associated
  20461.  with any buffer
  20462. Third arg is name of the host to connect to, or its IP address.
  20463. Fourth arg SERVICE is name of the service desired, or an integer
  20464.  specifying a port number to connect to.
  20465. Fhelp-with-tutorial
  20466. Select the Emacs learn-by-doing tutorial.
  20467. If there is a tutorial version written in the language
  20468. of the selected language environment, that version is used.
  20469. If there's no tutorial in that language, `TUTORIAL' is selected.
  20470. With arg, you are asked to select which language.
  20471. Fdefine-category
  20472. Make a new category whose designator is DESIGNATOR.
  20473. DESIGNATOR should be a visible letter of ' ' thru '~'.
  20474. STRING is a doc string for the category.
  20475. Letters of 'a' thru 'z' are already used or kept for the system.
  20476. Fundefine-category
  20477. Undefine DESIGNATOR as a designator for a category.
  20478. Fdefined-category-p
  20479. Return non-nil if DESIGNATOR is a designator for a defined category.
  20480. Fdefined-category-list
  20481. Return a list of the currently defined categories.
  20482. Categories are given by their designators.
  20483. Fundefined-category-designator
  20484. Return an undefined category designator, or nil if there are none.
  20485. Fcategory-doc-string
  20486. Return the doc-string for the category denoted by DESIGNATOR.
  20487. Fmodify-category-entry
  20488. Add a category to the categories associated with CHAR-RANGE.
  20489. CHAR-RANGE is a single character or a range of characters,
  20490.  as per `put-char-table'.
  20491. The category is given by a designator character.
  20492. The changes are made in TABLE, which defaults to the current buffer's
  20493.  category table.
  20494. If optional fourth argument RESET is non-nil, previous categories associated
  20495.  with CHAR-RANGE are removed before adding the specified category.
  20496. Fchar-category-list
  20497. Return a list of the categories that CHAR is in.
  20498. TABLE defaults to the current buffer's category table.
  20499. The categories are given by their designators.
  20500. Fdescribe-category
  20501. Describe the category specifications in the category table.
  20502. The descriptions are inserted in a buffer, which is then displayed.
  20503. Vpredefined-category-list
  20504. List of predefined categories.
  20505. Each element is a list of a charset, a designator, and maybe a doc string.
  20506. Vword-across-newline
  20507. Regular expression of such characters which can be a word across newline.
  20508. Fccl-program-p
  20509. T if OBJECT is a valid CCL compiled code.
  20510. Fccl-compile
  20511. Compile a CCL source program and return the compiled equivalent.
  20512. The return value will be a vector of integers.
  20513. Fccl-dump
  20514. Disassemble compiled CCL-CODE.
  20515. Fdefine-ccl-program
  20516. Does (defconst NAME (ccl-compile (eval CCL-PROGRAM)) DOC).
  20517. Byte-compiler expand this macro while compiling.
  20518. Vself-insert-after-hook
  20519. Hook to run when extended self insertion command exits.  Should take
  20520. two arguments START and END corresponding to character position.
  20521. Fstring-width
  20522. Return number of columns STRING occupies when displayed.
  20523. Uses the charset-columns attribute of the characters in STRING,
  20524. which may not accurately represent the actual display width when
  20525. using a window system.
  20526. Fdelete-text-in-column
  20527. Delete the text between column FROM and TO (exclusive) of the current line.
  20528. Nil of FORM or TO means the current column.
  20529.  
  20530. If there's a character across the borders, the character is replaced
  20531. with the same width of spaces before deleting.
  20532. Fmc-normal-form-string
  20533. $(BJ8;zNs(B STR $(B$N4A;zI8=`7AJ8;zNs$rJV$9!%(B
  20534. Fstring-memq
  20535. Returns non-nil if STR is an element of LIST.  Comparison done with string=.
  20536. The value is actually the tail of LIST whose car is STR.
  20537. If each element of LIST is not a string, it is converted to string
  20538.  before comparison.
  20539. Fcancel-undo-boundary
  20540. Cancel undo boundary.
  20541. Fchar-bytes
  20542. Return number of length a CHARACTER occupies in a string or buffer.
  20543. It returns only 1 in XEmacs.  It is for compatibility with MULE 2.3.
  20544. Fchar-width
  20545. Return number of columns a CHARACTER occupies when displayed.
  20546. Ffind-non-ascii-charset-string
  20547. Return a list of charsets in the STRING except ascii.
  20548. It might be available for compatibility with Mule 2.3,
  20549. because its `find-charset-string' ignores ASCII charset.
  20550. Ffind-non-ascii-charset-region
  20551. Return a list of charsets except ascii in the region between START and END.
  20552. It might be available for compatibility with Mule 2.3,
  20553. because its `find-charset-string' ignores ASCII charset.
  20554. Fsplit-char
  20555. Return list of charset and one or two position-codes of CHAR.
  20556. Fset-buffer-process-coding-system
  20557. Set coding systems for the process associated with the current buffer.
  20558. DECODING is the coding system to be used to decode input from the process,
  20559. ENCODING is the coding system to be used to encode output to the process.
  20560.  
  20561. For a list of possible values of CODING-SYSTEM, use \[list-coding-systems].
  20562. Fdefine-egg-environment
  20563. Define a new language environment for egg, named by ENV-SYM.
  20564. DOC-STRING should be a string describing the environment.
  20565. ENABLE-FUNCTION should be a function of no arguments that will be called
  20566. when the language environment is made current.
  20567. Vkinsoku-ascii
  20568. Do kinsoku-processing for ASCII.
  20569. Vkinsoku-jis
  20570. Do kinsoku-processing for JISX0208.
  20571. Vkinsoku-gb
  20572. Do kinsoku-processing for GB2312.
  20573. Vkinsoku-big5
  20574. Do kinsoku-processing for Big5..
  20575. Vkinsoku-ascii-bol
  20576. BOL kinsoku for ASCII.
  20577. Vkinsoku-ascii-eol
  20578. EOL kinsoku for ASCII.
  20579. Vkinsoku-jis-bol
  20580. BOL kinsoku for JISX0208.
  20581. Vkinsoku-jis-eol
  20582. EOL kinsoku for JISX0208.
  20583. Vkinsoku-gb-bol
  20584. BOL kinsoku for GB2312.
  20585. Vkinsoku-gb-eol
  20586. EOL kinsoku for GB2312.
  20587. Vkinsoku-big5-bol
  20588. BOL kinsoku for BIG5.
  20589. Vkinsoku-big5-eol
  20590. EOL kinsoku for BIG5.
  20591. Fkinsoku-bol-p
  20592. Check if point would break forbidden beginning-of-line rules
  20593. Uses category 's' to check.
  20594. point$(B$G2~9T$9$k$H9TF,6XB'$K?($l$k$+$I$&$+$r$+$($9!#(B
  20595. $(B9TF,6XB'J8;z$O(B's'$(B$N(Bcategory$(B$G;XDj$9$k!#(B
  20596. Fkinsoku-eol-p
  20597. Check if point would break forbidden end-of-line rules
  20598. Uses category 'e' to check.
  20599. point$(B$G2~9T$9$k$H9TKv6XB'$K?($l$k$+$I$&$+$r$+$($9!#(B
  20600. $(B9TKv6XB'J8;z$O(B's'$(B$N(Bcategory$(B$G;XDj$9$k!#(B
  20601. Vkinsoku-extend-limit
  20602. Defines how many characters kinsoku will search forward before giving up.
  20603. A value of nil equates to infinity.
  20604. $(B6XB'=hM}$G9T$r?-$P$7$FNI$$H>3QJ8;z?t$r;XDj$9$k!#(B
  20605. $(BHsIi@0?t0J30$N>l9g$OL58BBg$r0UL#$9$k!#(B
  20606. Fkinsoku-process
  20607. Move to a point that will not break forbidden line break rules.
  20608. $(B6XB'$K?($l$J$$E@$X0F0$9$k!#(B
  20609. point$(B$,9TF,6XB'$K?($l$k>l9g$O9T$r?-$P$7$F!
  20610. Fkinsoku-process-extend
  20611. Move point forward to a permissable for line-breaking.
  20612. $(B9T$r?-$P$7$F6XB'$K?($l$J$$E@$X0F0$9$k!#(B
  20613. Fkinsoku-process-shrink
  20614. Move point backward to a point permissable for line-breaking.
  20615. $(B9T$r=L$a$F6XB'$K?($l$J$$E@$X0F0$9$k!#(B
  20616. Fx-use-halfwidth-roman-font
  20617. Maybe set charset registry of the 'ascii charset to ROMAN-REGISTRY.
  20618.  
  20619. Do this only if:
  20620.  - the current display is an X device
  20621.  - the displayed width of FULLWIDTH-CHARSET is twice the displayed
  20622.    width of the 'ascii charset, but only when using ROMAN-REGISTRY.
  20623.  
  20624. Traditionally, Asian characters have been displayed so that they
  20625. occupy exactly twice the screen space of ASCII (`halfwidth')
  20626. characters.  On many systems, e.g. Sun CDE systems, this can only be
  20627. achieved by using a national variant roman font to display ASCII.
  20628. Finit-mule-x-win
  20629. Initialize X Windows for MULE at startup.  Don't call this.
  20630. Vmule-keymap
  20631. Keymap for MULE (Multilingual environment) specific commands.
  20632. Fview-hello-file
  20633. Display the HELLO file which list up many languages and characters.
  20634. Funiversal-coding-system-argument
  20635. Execute an I/O command using the specified coding system.
  20636. Fset-default-coding-systems
  20637. Set default value of various coding systems to CODING-SYSTEM.
  20638. The follwing coding systems are set:
  20639.   o coding system of a newly created buffer
  20640.   o default coding system for terminal output
  20641.   o default coding system for keyboard input
  20642.   o default coding system for subprocess I/O
  20643. Fprefer-coding-system
  20644. Add CODING-SYSTEM at the front of the priority list for automatic detection.
  20645. This also sets the following coding systems to CODING-SYSTEM:
  20646.   o coding system of a newly created buffer
  20647.   o default coding system for terminal output
  20648.   o default coding system for keyboard input
  20649.   o default coding system for subprocess I/O
  20650. Vlanguage-info-alist
  20651. Alist of language names vs the corresponding information of various kind.
  20652. Each element looks like:
  20653.     (LANGUAGE-NAME . ((KEY . INFO) ...))
  20654. where LANGUAGE-NAME is a string,
  20655. KEY is a symbol denoting the kind of information,
  20656. INFO is any Lisp object which contains the actual information related
  20657. to KEY.
  20658. Fget-language-info
  20659. Return the information for LANGUAGE-NAME of the kind KEY.
  20660. KEY is a symbol denoting the kind of required information.
  20661. Fset-language-info
  20662. Set for LANGUAGE-NAME the information INFO under KEY.
  20663. KEY is a symbol denoting the kind of information.
  20664. INFO is any Lisp object which contains the actual information.
  20665.  
  20666. Currently, the following KEYs are used by Emacs:
  20667.  
  20668. charset: list of symbols whose values are charsets specific to the language.
  20669.  
  20670. coding-system: list of coding systems specific to the langauge.
  20671.  
  20672. tutorial: a tutorial file name written in the language.
  20673.  
  20674. sample-text: one line short text containing characters of the language.
  20675.  
  20676. documentation: t or a string describing how Emacs supports the language.
  20677.       If a string is specified, it is shown before any other information
  20678.       of the language by the command `describe-language-environment'.
  20679.  
  20680. setup-function: a function to call for setting up environment
  20681.        convenient for a user of the language.
  20682.  
  20683. If KEY is documentation or setup-function, you can also specify
  20684. a cons cell as INFO, in which case, the car part should be
  20685. a normal value as INFO for KEY (as described above),
  20686. and the cdr part should be a symbol whose value is a menu keymap
  20687. in which an entry for the language is defined.  But, only the car part
  20688. is actually set as the information.
  20689.  
  20690. We will define more KEYs in the future.  To avoid conflict,
  20691. if you want to use your own KEY values, make them start with `user-'.
  20692. Fset-language-info-alist
  20693. Set for LANGUAGE-NAME the information in ALIST.
  20694. ALIST is an alist of KEY and INFO.  See the documentation of
  20695. `set-langauge-info' for the meanings of KEY and INFO.
  20696. Fread-language-name
  20697. Read language name which has information for KEY, prompting with PROMPT.
  20698. DEFAULT is the default choice of language.
  20699. This returns a language name as a string.
  20700. Vleim-list-file-name
  20701. Name of LEIM list file.
  20702. This file contains a list of libraries of Emacs input methods (LEIM)
  20703. in the format of Lisp expression for registering each input method.
  20704. Emacs loads this file at startup time.
  20705. Vleim-list-header
  20706. Header to be inserted in LEIM list file.
  20707. Vleim-list-entry-regexp
  20708. Regexp matching head of each entry in LEIM list file.
  20709. See also the variable `leim-list-header'
  20710. Vupdate-leim-list-functions
  20711. List of functions to call to update LEIM list file.
  20712. Each function is called with one arg, LEIM directory name.
  20713. Fupdate-leim-list-file
  20714. Update LEIM list file in directories DIRS.
  20715. Vcurrent-input-method
  20716. The current input method for multilingual text.
  20717. If nil, that means no input method is activated now.
  20718. Vcurrent-input-method-title
  20719. Title string of the current input method shown in mode line.
  20720. Vinput-method-history
  20721. History list for some commands that read input methods.
  20722. Vinactivate-current-input-method-function
  20723. Function to call for inactivating the current input method.
  20724. Every input method should set this to an appropriate value when activated.
  20725. This function is called with no argument.
  20726.  
  20727. This function should never change the value of `current-input-method'.
  20728. It is set to nil by the function `inactivate-input-method'.
  20729. Vdescribe-current-input-method-function
  20730. Function to call for describing the current input method.
  20731. This function is called with no argument.
  20732. Vinput-method-alist
  20733. Alist of input method names vs the corresponding information to use it.
  20734. Each element has the form:
  20735.     (INPUT-METHOD LANGUAGE-NAME ACTIVATE-FUNC TITLE DESCRIPTION ...)
  20736. See the function `register-input-method' for the meanings of each elements.
  20737. Fregister-input-method
  20738. Register INPUT-METHOD as an input method for LANGUAGE-NAME.
  20739. INPUT-METHOD and LANGUAGE-NAME are symbols or strings.
  20740. The remaining arguments are:
  20741.     ACTIVATE-FUNC, TITLE, DESCRIPTION, and ARG ...
  20742.  where,
  20743. ACTIVATE-FUNC is a function to call for activating this method.
  20744. TITLE is a string shown in mode-line while this method is active,
  20745. DESCRIPTION is a string describing about this method,
  20746. Arguments to ACTIVATE-FUNC are INPUT-METHOD and ARGs.
  20747. Fread-input-method-name
  20748. Read a name of input method from a minibuffer prompting with PROMPT.
  20749. If DEFAULT is non-nil, use that as the default,
  20750.   and substitute it into PROMPT at the first `%s'.
  20751. If INHIBIT-NULL is non-nil, null input signals an error.
  20752.  
  20753. The return value is a string.
  20754. Factivate-input-method
  20755. Turn INPUT-METHOD on.
  20756. If some input method is already on, turn it off at first.
  20757. Finactivate-input-method
  20758. Turn off the current input method.
  20759. Fselect-input-method
  20760. Select and turn on INPUT-METHOD.
  20761. This sets the default input method to what you specify,
  20762. and turn it on for the current buffer.
  20763. Ftoggle-input-method
  20764. Turn on or off a multilingual text input method for the current buffer.
  20765.  
  20766. With arg, read an input method from minibuffer and turn it on.
  20767.  
  20768. Without arg, if some input method is currently activated, turn it off,
  20769. else turn on an input method selected last time
  20770. or the default input method (see `default-input-method').
  20771.  
  20772. When there's no input method to turn on, turn on what read from minibuffer.
  20773. Fdescribe-input-method
  20774. Describe  input method INPUT-METHOD.
  20775. Fdescribe-current-input-method
  20776. Describe the input method currently in use.
  20777. Fread-multilingual-string
  20778. Read a multilingual string from minibuffer, prompting with string PROMPT.
  20779. The input method selected last time is activated in minibuffer.
  20780. If optional second arg INITIAL-INPUT is non-nil, insert it in the minibuffer
  20781. initially.
  20782. Optional 3rd argument INPUT-METHOD specifies the input method
  20783. to be activated instead of the one selected last time.  It is a symbol
  20784. or a string.
  20785. Vinput-method-activate-hook
  20786. Normal hook run just after an input method is activated.
  20787.  
  20788. The variable `current-input-method' keeps the input method name
  20789. just activated.
  20790. Vinput-method-inactivate-hook
  20791. Normal hook run just after an input method is inactivated.
  20792.  
  20793. The variable `current-input-method' still keeps the input method name
  20794. just inacitvated.
  20795. Vinput-method-after-insert-chunk-hook
  20796. Normal hook run just after an input method insert some chunk of text.
  20797. Vinput-method-exit-on-invalid-key
  20798. This flag controls the behaviour of an input method on invalid key input.
  20799. Usually, when a user types a key which doesn't start any character
  20800. handled by the input method, the key is handled by turning off the
  20801. input method temporalily.  After the key is handled, the input method is 
  20802. back on.
  20803. But, if this flag is non-nil, the input method is never back on.
  20804. Fsetup-specified-language-environment
  20805. Set up multi-lingual environment convenient for the specified language.
  20806. Vcurrent-language-environment
  20807. The last language environment specified with `set-language-environment'.
  20808. Fset-language-environment
  20809. Set up multi-lingual environment for using LANGUAGE-NAME.
  20810. This sets the coding system priority and the default input method
  20811. and sometimes other things.
  20812. Fdescribe-specified-language-support
  20813. Describe how Emacs supports the specified language environment.
  20814. Fdescribe-language-environment
  20815. Describe how Emacs supports language environment LANGUAGE-NAME.
  20816. Vchar-code-property-table
  20817. Char-table containing a property list of each character code.
  20818. ;; 
  20819. See also the documentation of `get-char-code-property' and
  20820. `put-char-code-property'
  20821. Fget-char-code-property
  20822. Return the value of CHAR's PROPNAME property in `char-code-property-table'.
  20823. Fput-char-code-property
  20824. Store CHAR's PROPNAME property with VALUE in `char-code-property-table'.
  20825. It can be retrieved with `(get-char-code-property CHAR PROPNAME)'.
  20826. Vccl-encode-big5-1-font
  20827. CCL program to encode a Big5 code (level1) to code point of Big5 font.
  20828. Vccl-encode-big5-2-font
  20829. CCL program to encode a Big5 code (level2) to code point of Big5 font.
  20830. Vccl-decode-koi8
  20831. CCL program to decode KOI8.
  20832. Vccl-encode-koi8
  20833. CCL program to encode KOI8.
  20834. Vccl-encode-koi8-font
  20835. CCL program to encode Cyrillic chars to KOI font.
  20836. Vccl-decode-alternativnyj
  20837. CCL program to decode Alternativnyj.
  20838. Vccl-encode-alternativnyj
  20839. CCL program to encode Alternativnyj.
  20840. Vccl-encode-alternativnyj-font
  20841. CCL program to encode Cyrillic chars to Alternativnyj font.
  20842. Fsetup-english-environment
  20843. Reset multilingual environment of Emacs to the default status.
  20844. The default status is as follows.
  20845.  
  20846.   The default value of enable-multibyte-characters is t.
  20847.  
  20848.   The default value of buffer-file-coding-system is nil.
  20849.   The coding system for terminal output is nil.
  20850.   The coding system for keyboard input is nil.
  20851.  
  20852.   The order of priorities of coding categories and the coding system
  20853.   bound to each category are as follows
  20854.     coding category            coding system
  20855.     --------------------------------------------------
  20856.     coding-category-iso-7        iso-2022-7bit
  20857.     coding-category-iso-8-1        iso-8859-1
  20858.     coding-category-iso-8-2        iso-8859-1
  20859.     coding-category-iso-7-else    iso-2022-7bit-lock
  20860.     coding-category-iso-8-else    iso-2022-8bit-ss2
  20861.     coding-category-emacs-mule     no-conversion
  20862.     coding-category-sjis        japanese-shift-jis
  20863.     coding-category-big5        chinese-big5
  20864.     coding-category-binarry        no-conversion
  20865.  
  20866. Fsetup-latin1-environment
  20867. Set up multilingual environment (MULE) for European Latin-1 users.
  20868. Fsetup-latin2-environment
  20869. Set up multilingual environment (MULE) for European Latin-2 users.
  20870. Fsetup-latin3-environment
  20871. Set up multilingual environment (MULE) for European Latin-3 users.
  20872. Fsetup-latin4-environment
  20873. Set up multilingual environment (MULE) for European Latin-4 users.
  20874. Fsetup-latin5-environment
  20875. Set up multilingual environment (MULE) for European Latin-5 users.
  20876. Fsetup-greek-environment
  20877. Setup multilingual environment (MULE) for Greek.
  20878. Fsetup-hebrew-environment
  20879. Setup multilingual environment (MULE) for Hebrew.
  20880. But, please note that right-to-left writing is not yet supported.
  20881. Vjapanese-word-regexp
  20882. Regular expression used to match a Japanese word.
  20883. Vspace-insertable
  20884. Regexp for finding points that can have spaces inserted into them for justification
  20885. Fsetup-korean-environment
  20886. Setup multilingual environment (MULE) for Korean.
  20887. Fsetup-ipa-environment
  20888. Setup multilingual environment (MULE) for IPA.
  20889. Vmodeline-multibyte-status
  20890. Modeline control for showing multibyte extension status.
  20891. Vauto-language-alist
  20892. Alist of LANG patterns vs. corresponding language environment.
  20893. Each element looks like (REGEXP . LANGUAGE-ENVIRONMENT).
  20894. It the value of the environment variable LANG matches the regexp REGEXP,
  20895. then `set-language-environment' is called with LANGUAGE-ENVIRONMENT.
  20896. Finit-mule
  20897. Initialize MULE environment at startup.  Don't call this.
  20898. Fmake-dialog-frame
  20899. Create a frame suitable for use as a dialog box.
  20900. The frame is made a child of PARENT (defaults to the selected frame),
  20901. and has additional properties PROPS, as well as `dialog-frame-plist'.
  20902. Normally it also has no modelines, menubars, or toolbars.
  20903. Fgui-button-p
  20904. True if OBJECT is a GUI button.
  20905. Fmake-gui-button
  20906. Make a GUI button whose label is STRING and whose action is ACTION.
  20907. If the button is inserted in a buffer and then clicked on, and ACTION
  20908. is non-nil, ACTION will be called with one argument, USER-DATA.
  20909. Finsert-gui-button
  20910. Insert GUI button BUTTON at POS in BUFFER.
  20911. Vmode-motion-hook
  20912. Function or functions which are called whenever the mouse moves.
  20913. You should normally use this rather than `mouse-motion-handler', which 
  20914. does some additional window-system-dependent things.  This hook is local
  20915. to every buffer, and should normally be set up by major-modes which want
  20916. to use special highlighting.  Every time the mouse moves over a window,
  20917. the mode-motion-hook of the buffer of that window is run.
  20918. Vmode-motion-help-echo-string
  20919. String to be added as the 'help-echo property of the mode-motion extent.
  20920. In order for this to work, you need to add the hook function
  20921. `mode-motion-add-help-echo' to the mode-motion hook.  If this is a function,
  20922. it will be called with one argument (the event) and should return a string
  20923. to be added.  This variable is local to every buffer.
  20924. Fmode-motion-highlight-line
  20925. For use as the value of `mode-motion-hook' -- highlight line under mouse.
  20926. Fmode-motion-highlight-word
  20927. For use as the value of `mode-motion-hook' -- highlight word under mouse.
  20928. Fmode-motion-highlight-symbol
  20929. For use as the value of `mode-motion-hook' -- highlight symbol under mouse.
  20930. Fmode-motion-highlight-sexp
  20931. For use as the value of `mode-motion-hook' -- highlight form under mouse.
  20932. Fmode-motion-add-help-echo
  20933. For use as the value of `mode-motion-hook' -- add a 'help-echo property.
  20934. This causes the string in the 'help-echo property to be displayed when the
  20935. mouse moves over the extent.  See `mode-motion-help-echo-string' for
  20936. documentation on how to control the string that is added.
  20937. Vmouse-yank-function
  20938. Function that is called upon by `mouse-yank' to actually insert text.
  20939. Fmouse-select
  20940. Select Emacs window the mouse is on.
  20941. Fmouse-delete-window
  20942. Delete the Emacs window the mouse is on.
  20943. Fmouse-keep-one-window
  20944. Select Emacs window mouse is on, then kill all other Emacs windows.
  20945. Fmouse-select-and-split
  20946. Select Emacs window mouse is on, then split it vertically in half.
  20947. Fmouse-set-point
  20948. Select Emacs window mouse is on, and move point to mouse position.
  20949. Fmouse-yank
  20950. Paste text with the mouse.
  20951. If the variable `mouse-yank-at-point' is nil, then pasting occurs at the
  20952. location of the click; otherwise, pasting occurs at the current cursor
  20953. location.
  20954. Fclick-inside-extent-p
  20955. Returns non-nil if the button event is within the bounds of the primary
  20956. selection-extent, nil otherwise.
  20957. Fpoint-inside-extent-p
  20958. Returns non-nil if the point is within or just after the bounds of the
  20959. primary selection-extent, nil otherwise.
  20960. Fmouse-drag-or-yank
  20961. Either drag or paste the current selection.  If the variable
  20962.  `mouse-yank-at-point' is non-nil, then moves the cursor to the location of
  20963.  the click before pasting.
  20964.  This functions has to be improved. Until now it is just a (working) test.
  20965. Fmouse-offix-drop
  20966. Do something with an OffiX drop event. Inserts Text drops and
  20967.  executes appropriate commands for specific drops.
  20968.  Text drops follow the `mouse-yank-at-point' variable.
  20969. Fmouse-eval-sexp
  20970. Evaluate the sexp under the mouse.  Usually, this is the last sexp before
  20971. the click, but if you click on a left paren, then it is the sexp beginning
  20972. with the paren that is evaluated.  Also, since strings evaluate to themselves,
  20973. they're fed to re-search-forward and the matched region is highlighted until
  20974. the mouse button is released.
  20975.  
  20976. Perhaps the most useful thing about this function is that the evaluation of
  20977. the expression which is clicked upon is relative not to the window where you
  20978. click, but to the current window and the current position of point.  Thus,
  20979. you can use `mouse-eval-sexp' to interactively test code that acts upon a
  20980. buffer...something you cannot do with the standard `eval-last-sexp' function.
  20981. It's also fantastic for debugging regular expressions.
  20982. Fmouse-line-length
  20983. Print the length of the line indicated by the pointer.
  20984. Fmouse-set-mark
  20985. Select Emacs window mouse is on, and set mark at mouse position.
  20986. Display cursor at that position for a second.
  20987. Fmouse-scroll
  20988. Scroll point to the mouse position.
  20989. Fmouse-del-char
  20990. Delete the char pointed to by the mouse.
  20991. Fmouse-kill-line
  20992. Kill the line pointed to by the mouse.
  20993. Fmouse-bury-buffer
  20994. Bury the buffer pointed to by the mouse, thus selecting the next one.
  20995. Fmouse-unbury-buffer
  20996. Unbury and select the most recently buried buffer.
  20997. Fnarrow-window-to-region
  20998. Narrow window to region between point and last mark
  20999. Fmouse-window-to-region
  21000. Narrow window to region between cursor and mouse pointer.
  21001. Fmouse-ignore
  21002. Don't do anything.
  21003. Fmouse-scroll-down
  21004. Junk me, please.
  21005. Fmouse-scroll-up
  21006. Junk me, please.
  21007. Fmouse-scroll-down-full
  21008. Junk me, please.
  21009. Fmouse-scroll-up-full
  21010. Junk me, please.
  21011. Fmouse-scroll-move-cursor
  21012. Junk me, please.
  21013. Fmouse-scroll-absolute
  21014. Junk me, please.
  21015. Fincr-scroll-down
  21016. Junk me, please.
  21017. Fincr-scroll-up
  21018. Junk me, please.
  21019. Fincremental-scroll
  21020. Junk me, please.
  21021. Fincr-scroll-stop
  21022. Junk me, please.
  21023. Fmouse-scroll-left
  21024. Junk me, please.
  21025. Fmouse-scroll-right
  21026. Junk me, please.
  21027. Fmouse-scroll-left-full
  21028. Junk me, please.
  21029. Fmouse-scroll-right-full
  21030. Junk me, please.
  21031. Fmouse-scroll-move-cursor-horizontally
  21032. Junk me, please.
  21033. Fmouse-scroll-absolute-horizontally
  21034. Junk me, please.
  21035. Vdefault-mouse-track-normalize-point-function
  21036. Function called to normalize position of point.
  21037. Called with two arguments: TYPE depends on the number of times that the
  21038. mouse has been clicked and is a member of `default-mouse-track-type-list',
  21039. FORWARDP determines the direction in which the point should be moved.
  21040. Vmouse-track-down-hook
  21041. Function or functions called when the user presses the mouse.
  21042. This hook is invoked by `mouse-track'; thus, it will not be called
  21043. for any buttons with a different binding.  The functions will be
  21044. called with two arguments: the button-press event and a click
  21045. count (see `mouse-track-click-hook').
  21046.  
  21047. If any function returns non-nil, the remaining functions will not be
  21048. called.
  21049.  
  21050. Note that most applications should take action when the mouse is
  21051. released, not when it is pressed.'
  21052. Vmouse-track-drag-hook
  21053. Function or functions called when the user drags the mouse.
  21054. This hook is invoked by `mouse-track'; thus, it will not be called
  21055. for any buttons with a different binding.  The functions will be
  21056. called with three arguments: the mouse-motion event, a click
  21057. count (see `mouse-track-click-hook'), and whether the call to
  21058. this hook occurred as a result of a drag timeout (see
  21059. `mouse-track-scroll-delay').
  21060.  
  21061. If any function returns non-nil, the remaining functions will not be
  21062. called.
  21063.  
  21064. Note that no calls to this function will be made until the user
  21065. initiates a drag (i.e. moves the mouse more than a certain
  21066. threshold in either the X or the Y direction, as defined by
  21067. `mouse-track-x-threshold' and `mouse-track-y-threshold').
  21068.  
  21069. See also `mouse-track-drag-up-hook'.
  21070. Vmouse-track-drag-up-hook
  21071. Function or functions called when the user finishes a drag.
  21072. This hook is invoked by `mouse-track'; thus, it will not be called
  21073. for any buttons with a different binding.  The functions will be
  21074. called with two arguments: the button-press event and a click
  21075. count (see `mouse-track-click-hook').
  21076.  
  21077. If any function returns non-nil, the remaining functions will not be
  21078. called.
  21079.  
  21080. Note that this hook will not be invoked unless the user has
  21081. initiated a drag, i.e. moved the mouse more than a certain threshold
  21082. (see `mouse-track-drag-hook').  When this function is invoked,
  21083. `mouse-track-drag-hook' will have been invoked at least once.
  21084.  
  21085. See also `mouse-track-click-hook'.
  21086. Vmouse-track-click-hook
  21087. Function or functions called when the user clicks the mouse.
  21088. `Clicking' means pressing and releasing the mouse without having
  21089. initiated a drag (i.e. without having moved more than a certain
  21090. threshold -- see `mouse-track-drag-hook').
  21091.  
  21092. This hook is invoked by `mouse-track'; thus, it will not be called
  21093. for any buttons with a different binding.  The functions will be
  21094. called with two arguments: the button-release event and a click
  21095. count, which specifies the number of times that the mouse has been
  21096. clicked in a series of clicks, each of which is separated by at most
  21097. `mouse-track-multi-click-time'.  This can be used to implement actions
  21098. that are called on double clicks, triple clicks, etc.
  21099.  
  21100. If any function returns non-nil, the remaining functions will not be
  21101. called.
  21102.  
  21103. See also `mouse-track-drag-up-hook.
  21104. Vmouse-track-up-hook
  21105. Function or functions called when the user releases the mouse.
  21106. This hook is invoked by `mouse-track'; thus, it will not be called
  21107. for any buttons with a different binding.  The functions will be
  21108. called with two arguments: the button-release event and a click
  21109. count (see `mouse-track-click-hook').
  21110.  
  21111. For many applications, it is more appropriate to use one or both
  21112. of `mouse-track-click-hook' and `mouse-track-drag-up-hook'.
  21113. Vmouse-track-cleanup-hook
  21114. Function or functions called when `mouse-track' terminates.
  21115. This hook will be called in all circumstances, even upon a
  21116. non-local exit out of `mouse-track', and so is useful for
  21117. doing cleanup work such as removing extents that may have
  21118. been created during the operation of `mouse-track'.
  21119.  
  21120. Unlike all of the other mouse-track hooks, this is a "normal"
  21121. hook: the hook functions are called with no arguments, and
  21122. all hook functions are called regardless of their return
  21123. values.
  21124. Vmouse-track-x-threshold
  21125. Minimum number of pixels in the X direction for a drag to be initiated.
  21126. If the mouse is moved more than either the X or Y threshold while the
  21127. button is held down (see also `mouse-track-y-threshold'), then a drag
  21128. is initiated; otherwise the gesture is considered to be a click.
  21129. See `mouse-track'.
  21130.  
  21131. The value should be either a number of a form to be evaluated to
  21132. produce a number.
  21133. Vmouse-track-y-threshold
  21134. Minimum number of pixels in the Y direction for a drag to be initiated.
  21135. If the mouse is moved more than either the X or Y threshold while the
  21136. button is held down (see also `mouse-track-x-threshold'), then a drag
  21137. is initiated; otherwise the gesture is considered to be a click.
  21138. See `mouse-track'.
  21139.  
  21140. The value should be either a number of a form to be evaluated to
  21141. produce a number.
  21142. Fmouse-track
  21143. Make a selection with the mouse.  This should be bound to a mouse button.
  21144. The behavior of XEmacs during mouse selection is customizable using various
  21145. hooks and variables: see `mouse-track-click-hook', `mouse-track-drag-hook',
  21146. `mouse-track-drag-up-hook', `mouse-track-down-hook', `mouse-track-up-hook',
  21147. `mouse-track-cleanup-hook', `mouse-track-multi-click-time',
  21148. `mouse-track-scroll-delay', `mouse-track-x-threshold', and
  21149. `mouse-track-y-threshold'.
  21150.  
  21151. Default handlers are provided to implement standard selecting/positioning
  21152. behavior.  You can explicitly request this default behavior, and override
  21153. any custom-supplied handlers, by using the function `mouse-track-default'
  21154. instead of `mouse-track'.
  21155.  
  21156. Default behavior is as follows: 
  21157.  
  21158. If you click-and-drag, the selection will be set to the region between the
  21159. point of the initial click and the point at which you release the button.
  21160. These positions need not be ordered.
  21161.  
  21162. If you click-and-release without moving the mouse, then the point is moved
  21163. and the selection is disowned (there will be no selection owner).  The mark
  21164. will be set to the previous position of point.
  21165.  
  21166. If you double-click, the selection will extend by symbols instead of by
  21167. characters.  If you triple-click, the selection will extend by lines.
  21168.  
  21169. If you drag the mouse off the top or bottom of the window, you can select
  21170. pieces of text which are larger than the visible part of the buffer; the
  21171. buffer will scroll as necessary.
  21172.  
  21173. The selected text becomes the current X Selection.  The point will be left
  21174. at the position at which you released the button, and the mark will be left
  21175. at the initial click position.
  21176. Fmouse-track-default
  21177. Invoke `mouse-track' with only the default handlers active.
  21178. Fmouse-track-do-rectangle
  21179. Like `mouse-track' but selects rectangles instead of regions.
  21180. Fmouse-track-adjust
  21181. Extend the existing selection.  This should be bound to a mouse button.
  21182. The selection will be enlarged or shrunk so that the point of the mouse
  21183. click is one of its endpoints.  This function in fact behaves fairly
  21184. similarly to `mouse-track', but begins by extending the existing selection
  21185. (or creating a new selection from the previous text cursor position to
  21186. the current mouse position) instead of creating a new, empty selection.
  21187.  
  21188. The mouse-track handlers are run from this command just like from
  21189. `mouse-track'.  Therefore, do not call this command from a mouse-track
  21190. handler!
  21191. Fmouse-track-adjust-default
  21192. Extend the existing selection, using only the default handlers.
  21193. This is just like `mouse-track-adjust' but will override any
  21194. custom mouse-track handlers that the user may have installed.
  21195. Fmouse-track-insert
  21196. Make a selection with the mouse and insert it at point.
  21197. This is exactly the same as the `mouse-track' command on \[mouse-track],
  21198. except that point is not moved; the selected text is immediately inserted
  21199. after being selected; and the selection is immediately disowned afterwards.
  21200. Fmouse-track-delete-and-insert
  21201. Make a selection with the mouse and insert it at point.
  21202. This is exactly the same as the `mouse-track' command on \[mouse-track],
  21203. except that point is not moved; the selected text is immediately inserted
  21204. after being selected; and the text of the selection is deleted.
  21205. Vinhibit-help-echo
  21206. Inhibits display of `help-echo' extent properties in the minibuffer.
  21207. Fdefault-mouse-motion-handler
  21208. For use as the value of `mouse-motion-handler'.
  21209. This implements the various pointer-shape variables,
  21210. as well as extent highlighting, help-echo, toolbar up/down,
  21211. and `mode-motion-hook'.
  21212. Fmaybe-add-init-button
  21213. Don't call this.
  21214. Adds `Load .emacs' button to menubar when starting up with -q.
  21215. Ffile-menu-filter
  21216. Incrementally update the file menu.
  21217. This function changes the arguments and sensitivity of these File menu items:
  21218.  
  21219.   Delete Buffer  has the name of the current buffer appended to it.
  21220.   Print Buffer   has the name of the current buffer appended to it.
  21221.   Pretty-Print Buffer
  21222.          has the name of the current buffer appended to it.
  21223.   Save           has the name of the current buffer appended to it, and is
  21224.                  sensitive only when the current buffer is modified.
  21225.   Revert Buffer  has the name of the current buffer appended to it, and is
  21226.                  sensitive only when the current buffer has a file.
  21227.   Delete Frame   sensitive only when there is more than one frame.
  21228.  
  21229. The name of the current buffer is only appended to the menu items if
  21230. `put-buffer-names-in-file-menu' is non-nil.  This behavior is the default.
  21231. Fedit-menu-filter
  21232. For use as an incremental menu construction filter.
  21233. This function changes the sensitivity of these Edit menu items:
  21234.  
  21235.   Cut    sensitive only when emacs owns the primary X Selection.
  21236.   Copy   sensitive only when emacs owns the primary X Selection.
  21237.   Clear  sensitive only when emacs owns the primary X Selection.
  21238.   Paste  sensitive only when there is an owner for the X Clipboard Selection.
  21239.   Undo   sensitive only when there is undo information.
  21240.          While in the midst of an undo, this is changed to "Undo More".
  21241. Fbookmark-menu-filter
  21242. *Build the bookmark jump submenu dynamically from all defined bookmarks.
  21243. Fbookmark-delete-filter
  21244. *Build the bookmark delete submenu dynamically from all defined bookmarks.
  21245. Fbuffers-menu-omit-invisible-buffers
  21246. For use as a value of `buffers-menu-omit-function'.
  21247. Omits normally invisible buffers (those whose name begins with a space).
  21248. Fsort-buffers-menu-alphabetically
  21249. For use as a value of `buffers-menu-sort-function'.
  21250. Sorts the buffers in alphabetical order by name, but puts buffers beginning
  21251. with a star at the end of the list.
  21252. Fsort-buffers-menu-by-mode-then-alphabetically
  21253. For use as a value of `buffers-menu-sort-function'.
  21254. Sorts first by major mode and then alphabetically by name, but puts buffers
  21255. beginning with a star at the end of the list.
  21256. Fslow-format-buffers-menu-line
  21257. For use as a value of `buffers-menu-format-buffer-line-function'.
  21258. This returns a string containing a bunch of info about the buffer.
  21259. Fformat-buffers-menu-line
  21260. For use as a value of `buffers-menu-format-buffer-line-function'.
  21261. This just returns the buffer's name.
  21262. Fgroup-buffers-menu-by-mode-then-alphabetically
  21263. For use as a value of `buffers-menu-grouping-function'.
  21264. This groups buffers by major mode.  It only really makes sense if
  21265. `buffers-menu-sorting-function' is
  21266. `sort-buffers-menu-by-mode-then-alphabetically'.
  21267. Fbuffers-menu-filter
  21268. This is the menu filter for the top-level buffers "Buffers" menu.
  21269. It dynamically creates a list of buffers to use as the contents of the menu.
  21270. Only the most-recently-used few buffers will be listed on the menu, for
  21271. efficiency reasons.  You can control how many buffers will be shown by
  21272. setting `buffers-menu-max-size'.  You can control the text of the menu
  21273. items by redefining the function `format-buffers-menu-line'.
  21274. Flanguage-environment-menu-filter
  21275. This is the menu filter for the "Language Environment" submenu.
  21276. Voptions-save-faces
  21277. if t, save-options will save all the face information.
  21278. Set to nil to avoid this. This is recommended on XEmacs 19.15
  21279. and above as we have a much more powerful (read: working) way 
  21280. of changing and saving faces via cu-edit-faces.el & custom.el.
  21281. Voptions-menu-saved-forms
  21282. The variables to save; or forms to evaluate to get forms to write out.
  21283. This is used by `save-options-menu-settings' and should mirror the
  21284. options listed in the Options menu.
  21285. Fsave-options-non-customized-face-list
  21286. This function will return a list of all faces that have not been
  21287. 'customized'.
  21288. Vsave-options-init-file
  21289. File into which to save forms to load the options file (nil for .emacs).
  21290. Normally this is nil, which means save into your .emacs file (the value
  21291. of `user-init-file'.
  21292. Vsave-options-file
  21293. File to save options into.
  21294. This file is loaded from your .emacs file.
  21295. If this is a relative filename, it is put into the same directory as your
  21296. .emacs file.
  21297. Fsave-options-menu-settings
  21298. Saves the current settings of the `Options' menu to your `.emacs' file.
  21299. Vglobal-popup-menu
  21300. The global popup menu.  This is present in all modes.
  21301. See the function `popup-menu' for a description of menu syntax.
  21302. Vmode-popup-menu
  21303. The mode-specific popup menu.  Automatically buffer local.
  21304. This is appended to the default items in `global-popup-menu'.
  21305. See the function `popup-menu' for a description of menu syntax.
  21306. Vactivate-popup-menu-hook
  21307. Function or functions run before a mode-specific popup menu is made visible.
  21308. These functions are called with no arguments, and should interrogate and
  21309. modify the value of `global-popup-menu' or `mode-popup-menu' as desired.
  21310. Note: this hook is only run if you use `popup-mode-menu' for activating the
  21311. global and mode-specific commands; if you have your own binding for button3,
  21312. this hook won't be run.
  21313. Fpopup-mode-menu
  21314. Pop up a menu of global and mode-specific commands.
  21315. The menu is computed by combining `global-popup-menu' and `mode-popup-menu'.
  21316. Fpopup-buffer-menu
  21317. Pop up a copy of the Buffers menu (from the menubar) where the mouse is clicked.
  21318. Fpopup-menubar-menu
  21319. Pop up a copy of menu that also appears in the menubar
  21320. Fxemacs-splash-buffer
  21321. Redisplay XEmacs splash screen in a buffer.
  21322. Fx-make-font-bold
  21323. Given an X font specification, this attempts to make a `bold' font.
  21324. If it fails, it returns nil.
  21325. Fx-make-font-unbold
  21326. Given an X font specification, this attempts to make a non-bold font.
  21327. If it fails, it returns nil.
  21328. Fx-make-font-italic
  21329. Given an X font specification, this attempts to make an `italic' font.
  21330. If it fails, it returns nil.
  21331. Fx-make-font-unitalic
  21332. Given an X font specification, this attempts to make a non-italic font.
  21333. If it fails, it returns nil.
  21334. Fx-make-font-bold-italic
  21335. Given an X font specification, this attempts to make a `bold-italic' font.
  21336. If it fails, it returns nil.
  21337. Fx-font-size
  21338. Return the nominal size of the given font.
  21339. This is done by parsing its name, so it's likely to lose.
  21340. X fonts can be specified (by the user) in either pixels or 10ths of points,
  21341.  and this returns the first one it finds, so you have to decide which units
  21342.  the returned value is measured in yourself...
  21343. Fx-find-smaller-font
  21344. Loads a new, slightly smaller version of the given font (or font name).
  21345. Returns the font if it succeeds, nil otherwise.
  21346. If scalable fonts are available, this returns a font which is 1 point smaller.
  21347. Otherwise, it returns the next smaller version of this font that is defined.
  21348. Fx-find-larger-font
  21349. Loads a new, slightly larger version of the given font (or font name).
  21350. Returns the font if it succeeds, nil otherwise.
  21351. If scalable fonts are available, this returns a font which is 1 point larger.
  21352. Otherwise, it returns the next larger version of this font that is defined.
  21353. Viso8859/1-code-to-x-keysym-table
  21354. Maps iso8859/1 to an X keysym name which corresponds to it.
  21355. There may be more than one X name for this keycode; this returns the first one.
  21356. Note that this is X specific; one should avoid using this table whenever 
  21357. possible, in the interest of portability.
  21358. Fx-mouse-kill
  21359. Kill the text between the point and mouse and copy it to the clipboard and
  21360. to the cut buffer
  21361. Fx-yank-function
  21362. Insert the current X selection or, if there is none, insert the X cutbuffer.
  21363. A mark is pushed, so that the inserted text lies between point and mark.
  21364. Fx-insert-selection
  21365. Insert the current selection into buffer at point.
  21366. Fx-set-point-and-insert-selection
  21367. Set point where clicked and insert the primary selection or the cut buffer.
  21368. Fx-set-point-and-move-selection
  21369. Set point where clicked and move the selected text to that location.
  21370. Fmouse-track-and-copy-to-cutbuffer
  21371. Make a selection like `mouse-track', but also copy it to the cutbuffer.
  21372. Fx-init-pointer-shape
  21373. Initializes the mouse-pointers of the given device from the resource
  21374. database.
  21375. Vx-selected-text-type
  21376. The type atom used to obtain selections from the X server.
  21377. Can be either a valid X selection data type, or a list of such types.
  21378. COMPOUND_TEXT and STRING are the most commonly used data types.
  21379. If a list is provided, the types are tried in sequence until
  21380. there is a successful conversion.
  21381. Fx-get-selection
  21382. Return the value of an X Windows selection.
  21383. The argument TYPE (default `PRIMARY') says which selection, 
  21384. and the argument DATA-TYPE (default `STRING', or `COMPOUND_TEXT' under Mule)
  21385. says how to convert the data.
  21386. Fx-get-secondary-selection
  21387. Return text selected from some X window.
  21388. Fx-get-clipboard
  21389. Return text pasted to the clipboard.
  21390. Vprimary-selection-extent
  21391. The extent of the primary selection; don't use this.
  21392. Vsecondary-selection-extent
  21393. The extent of the secondary selection; don't use this.
  21394. Fx-own-selection
  21395. Make an X Windows selection of type TYPE and value DATA.
  21396. The argument TYPE (default `PRIMARY') says which selection, 
  21397. and DATA specifies the contents.  DATA may be a string,
  21398. a symbol, an integer (or a cons of two integers or list of two integers).
  21399.  
  21400. The selection may also be a cons of two markers pointing to the same buffer,
  21401. or an overlay.  In these cases, the selection is considered to be the text 
  21402. between the markers *at whatever time the selection is examined*.
  21403. Thus, editing done in the buffer after you specify the selection
  21404. can alter the effective value of the selection.
  21405.  
  21406. The data may also be a vector of valid non-vector selection values.
  21407.  
  21408. Interactively, the text of the region is used as the selection value.
  21409. Fx-own-secondary-selection
  21410. Make a secondary X Selection of the given argument.  The argument may be a 
  21411. string or a cons of two markers (in which case the selection is considered to
  21412. be the text between those markers).
  21413. Fx-own-clipboard
  21414. Paste the given string to the X Clipboard.
  21415. Fx-disown-selection
  21416. Assuming we own the selection, disown it.  With an argument, discard the
  21417. secondary selection instead of the primary selection.
  21418. Fx-dehilight-selection
  21419. for use as a value of `x-lost-selection-hooks'.
  21420. Fx-notice-selection-requests
  21421. for possible use as the value of x-sent-selection-hooks.
  21422. Fx-notice-selection-failures
  21423. for possible use as the value of x-sent-selection-hooks.
  21424. Fx-get-cutbuffer
  21425. Returns the value of one of the 8 X server cut buffers.  Optional arg
  21426. WHICH-ONE should be a number from 0 to 7, defaulting to 0.
  21427. Cut buffers are considered obsolete; you should use selections instead.
  21428. This function does nothing if support for cut buffers was not compiled
  21429. into Emacs.
  21430. Fx-store-cutbuffer
  21431. Store STRING into the X server's primary cut buffer.
  21432. If PUSH is non-nil, also rotate the cut buffers:
  21433. this means the previous value of the primary cut buffer moves the second
  21434. cut buffer, and the second to the third, and so on (there are 8 buffers.)
  21435. Cut buffers are considered obsolete; you should use selections instead.
  21436. This function does nothing if support for cut buffers was not compiled
  21437. into Emacs.
  21438. Fx-copy-primary-selection
  21439. Copy the selection to the Clipboard and the kill ring.
  21440. Fx-kill-primary-selection
  21441. Copy the selection to the Clipboard and the kill ring, then delete it.
  21442. Fx-delete-primary-selection
  21443. Delete the selection without copying it to the Clipboard or the kill ring.
  21444. Fx-yank-clipboard-selection
  21445. Insert the current Clipboard selection at point.
  21446. Fxselect-convert-to-name
  21447. xemacs
  21448. Fx-bogosity-check-resource
  21449. Check for a bogus resource specification.
  21450. Fx-init-specifier-from-resources
  21451. Initialize a specifier from the resource database.
  21452. LOCALE specifies the locale that is to be initialized and should be
  21453. a frame, a device, or 'global.  TYPE is the type of the resource and
  21454. should be one of 'string, 'boolean, 'integer, or 'natnum.  The
  21455. remaining args should be conses of names and classes of resources
  21456. to be examined.  The first resource with a value specified becomes
  21457. the spec for SPECIFIER in LOCALE. (However, if SPECIFIER already
  21458. has a spec in LOCALE, nothing is done.) Finally, if LOCALE is 'global,
  21459. a check is done for bogus resource specifications.
  21460. Fow-find
  21461. Search forward the next occurrence of the text of the selection.
  21462. Fow-find-backward
  21463. Search backward for the previous occurrence of the text of the selection.
  21464. Fx-initialize-compose
  21465. Enable compose processing
  21466. Fx-initialize-keyboard
  21467. Perform X-Server-specific initializations.  Don't call this.
  21468. Finit-pre-x-win
  21469. Initialize X Windows at startup (pre).  Don't call this.
  21470. Finit-x-win
  21471. Initialize X Windows at startup.  Don't call this.
  21472. Finit-post-x-win
  21473. Initialize X Windows at startup (post).  Don't call this.
  21474. Fmake-frame-on-display
  21475. Create a frame on the X display named DISPLAY.
  21476. DISPLAY should be a standard display string such as "unix:0",
  21477. or nil for the display specified on the command line or in the
  21478. DISPLAY environment variable.
  21479.  
  21480. PROPS should be a plist of properties, as in the call to `make-frame'.
  21481.  
  21482. This function opens a connection to the display or reuses an existing
  21483. connection.
  21484.  
  21485. This function is a trivial wrapper around `make-frame-on-device'.
  21486. Ftoolbar-ispell
  21487. Intelligently spell the region or buffer.
  21488. Ftoolbar-mail
  21489. Run mail in a separate frame.
  21490. Vtoolbar-info-frame
  21491. The frame in which info is displayed.
  21492. Ftoolbar-info
  21493. Run info in a separate frame.
  21494. Ftoolbar-compile
  21495. Run compile without having to touch the keyboard.
  21496. Vtoolbar-news-frame
  21497. The frame in which news is displayed.
  21498. Vtoolbar-news-frame-properties
  21499. The properties of the frame in which news is displayed.
  21500. Ftoolbar-gnus
  21501. Run Gnus in a separate frame.
  21502. Ftoolbar-news
  21503. Run News (in a separate frame??).
  21504. Vtoolbar-last-win-icon
  21505. A `last-win' icon set.
  21506. Vtoolbar-next-win-icon
  21507. A `next-win' icon set.
  21508. Vtoolbar-file-icon
  21509. A `file' icon set.
  21510. Vtoolbar-folder-icon
  21511. A `folder' icon set
  21512. Vtoolbar-disk-icon
  21513. A `disk' icon set.
  21514. Vtoolbar-printer-icon
  21515. A `printer' icon set.
  21516. Vtoolbar-cut-icon
  21517. A `cut' icon set.
  21518. Vtoolbar-copy-icon
  21519. A `copy' icon set.
  21520. Vtoolbar-paste-icon
  21521. A `paste' icon set.
  21522. Vtoolbar-undo-icon
  21523. An `undo' icon set.
  21524. Vtoolbar-spell-icon
  21525. A `spell' icon set.
  21526. Vtoolbar-replace-icon
  21527. A `replace' icon set.
  21528. Vtoolbar-mail-icon
  21529. A `mail' icon set.
  21530. Vtoolbar-info-icon
  21531. An `info' icon set.
  21532. Vtoolbar-compile-icon
  21533. A `compile' icon set.
  21534. Vtoolbar-debug-icon
  21535. A `debugger' icon set.
  21536. Vtoolbar-news-icon
  21537. A `news' icon set.
  21538. Vinitial-toolbar-spec
  21539. The initial toolbar for a buffer.
  21540. Finit-pre-tty-win
  21541. Initialize TTY at startup (pre).  Don't call this.
  21542. Finit-post-tty-win
  21543. Initialize TTY at console creation time (post).  Don't call this.
  21544. Finit-tty-win
  21545. Initialize TTY at startup.  Don't call this.
  21546. Fmake-frame-on-tty
  21547. Create a frame on the TTY connection named TTY.
  21548. TTY should be a TTY device name such as "/dev/ttyp3" (as returned by
  21549. the `tty' command in that TTY), or nil for the standard input/output
  21550. of the running XEmacs process.
  21551.  
  21552. PROPS should be a plist of properties, as in the call to `make-frame'.
  21553.  
  21554. This function opens a connection to the TTY or reuses an existing
  21555. connection.
  21556.  
  21557. This function is a trivial wrapper around `make-frame-on-device'.
  21558. Ffont-lock-set-defaults
  21559. Set fontification defaults appropriately for this mode.
  21560. Sets `font-lock-keywords', `font-lock-keywords-only', `font-lock-syntax-table',
  21561. `font-lock-beginning-of-syntax-function' and
  21562. `font-lock-keywords-case-fold-search'.
  21563.  
  21564. If `font-lock-defaults' is currently set, it is used.  Otherwise, the
  21565. symbol naming the major mode is examined for a `font-lock-defaults'
  21566. property.  If that is not present, but a variable `foo-mode-font-lock-keywords'
  21567. is, the value of that variable is used as the default for
  21568. `font-lock-keywords'.  Various other backward-compatible behaviors also
  21569. exist -- if you're curious, look at the source.
  21570.  
  21571. The value of `font-lock-maximum-decoration' is used to determine which
  21572. set of keywords applies, if more than one exists.
  21573.  
  21574. This will also put the buffer into Font Lock mode if any keywords exist
  21575. and if auto-fontification is called for, as determined by
  21576. `font-lock-auto-fontify', `font-lock-mode-enable-list', and
  21577. `font-lock-mode-disable-list'.
  21578.  
  21579. Calling this function multiple times in the same buffer is safe -- this
  21580. function keeps track of whether it has already been called in this
  21581. buffer, and does nothing if so.  This allows for multiple ways of getting
  21582. Font Lock properly initialized in a buffer, to deal with existing major
  21583. modes that do not call this function. (For example, Font Lock adds this
  21584. function to `find-file-hooks'.)
  21585.  
  21586. Major modes that have any font-lock defaults specified should call this
  21587. function during their initialization process, after they have set
  21588. the variable `major-mode'.
  21589.  
  21590. If EXPLICIT-DEFAULTS is t, this function will not check whether it
  21591. has already been run in this buffer, and will always do the full
  21592. computation.
  21593.  
  21594. If EXPLICIT-DEFAULTS is not nil and not t, it should be something
  21595. that is allowable as a value for `font-lock-defaults' and will be
  21596. used to initialize the Font Lock variables.
  21597. Fauto-show-truncationp
  21598. True if line truncation is enabled for the selected window.
  21599. Fauto-show-mode
  21600. Turn automatic horizontal scroll mode on or off.
  21601. With arg, turn auto scrolling on if arg is positive, off otherwise.
  21602. This mode is enabled or disabled for each buffer individually.
  21603. It takes effect only when `truncate-lines' is non-nil.
  21604. Vauto-show-inhibiting-commands
  21605. Commands that inhibit auto-show behavior.
  21606. This normally includes the horizontal scrollbar commands.
  21607. Fauto-show-make-region-visible
  21608. Move point in such a way that the region (START, END) is visible.
  21609. This only does anything if auto-show-mode is enabled, and it doesn't
  21610. actually do any horizontal scrolling; rather, it just sets things up so
  21611. that the region will be visible when `auto-show-make-point-visible'
  21612. is next called (this happens after every command).
  21613. Fauto-show-make-point-visible
  21614. Scroll horizontally to make point visible, if that is enabled.
  21615. This function only does something if `auto-show-mode' is non-nil
  21616. and longlines are being truncated in the selected window.
  21617. See also the command `auto-show-mode'.
  21618. Fvm
  21619. View Mail: an alternate mail reader for emacs.
  21620. Optional first arg FOLDER specifies the folder to visit.  It defaults
  21621. to the value of vm-primary-inbox.  The folder buffer is put into VM
  21622. mode, a major mode for reading mail.
  21623.  
  21624. Prefix arg or optional second arg READ-ONLY non-nil indicates
  21625. that the folder should be considered read only.  No attribute
  21626. changes, messages additions or deletions will be allowed in the
  21627. visited folder.
  21628.  
  21629. Visiting the primary inbox causes any contents of the system mailbox to
  21630. be moved and appended to the resulting buffer.
  21631.  
  21632. All the messages can be read by repeatedly pressing SPC.  Use `n'ext and
  21633. `p'revious to move about in the folder.  Messages are marked for
  21634. deletion with `d', and saved to another folder with `s'.  Quitting VM
  21635. with `q' expunges deleted messages and saves the buffered folder to
  21636. disk.
  21637.  
  21638. See the documentation for vm-mode for more information.
  21639. Fvm-mode
  21640. View Mail: an alternate mail reader for emacs.
  21641.  
  21642. Commands:
  21643.    h - summarize folder contents
  21644.    j - discard cached information about the current message
  21645.  
  21646.    n - go to next message
  21647.    p - go to previous message
  21648.    N - like `n' but ignores skip-variable settings
  21649.    P - like `p' but ignores skip-variable settings
  21650.  M-n - go to next unread message
  21651.  M-p - go to previous unread message
  21652.  RET - go to numbered message (uses prefix arg or prompts in minibuffer)
  21653.  TAB - go to last message seen
  21654.  M-s - incremental search through the folder
  21655.  
  21656.    t - display hidden headers
  21657.  SPC - scroll forward a page (if at end of message, then display next message)
  21658.    b - scroll backward a page
  21659.    < - go to beginning of current message
  21660.    > - go to end of current message
  21661.  
  21662.    d - delete message, prefix arg deletes messages forward (flag as deleted)
  21663.  C-d - delete message, prefix arg deletes messages backward (flag as deleted)
  21664.    u - undelete
  21665.    k - flag for deletion all messages with same subject as the current message
  21666.  
  21667.    r - reply (only to the sender of the message)
  21668.    R - reply with included text for current message
  21669.  M-r - extract and resend bounced message
  21670.    f - followup (reply to all recipients of message)
  21671.    F - followup with included text from the current message
  21672.    z - forward the current message
  21673.    m - send a message
  21674.    B - resend the current message to another user.
  21675.    c - continue composing the most recent message you were composing
  21676.  
  21677.    @ - digestify and mail entire folder contents (the folder is not modified)
  21678.    * - burst a digest into individual messages, and append and assimilate these
  21679.        message into the current folder.
  21680.  
  21681.    G - sort messages by various keys
  21682.  
  21683.    g - get any new mail that has arrived in the system mailbox
  21684.        (new mail is appended to the disk and buffer copies of the
  21685.        primary inbox.)
  21686.    v - visit another mail folder
  21687.    V - visit a virtual folder
  21688.  
  21689.    e - edit the current message
  21690.  
  21691.    s - save current message in a folder (appends if folder already exists)
  21692.    w - write current message to a file without its headers (appends if exists)
  21693.    S - save entire folder to disk, expunging deleted messages
  21694.    A - save unfiled messages to their vm-auto-folder-alist specified folders
  21695.    # - expunge deleted messages (without saving folder)
  21696.    q - quit VM, deleted messages are expunged, folder saved to disk
  21697.    x - exit VM with no change to the folder
  21698.  
  21699.  M N - use marks; the next vm command will affect only marked messages
  21700.        if it makes sense for the command to do so
  21701.  
  21702.        M M - mark the current message
  21703.        M U - unmark the current message
  21704.        M m - mark all messages
  21705.        M u - unmark all messages
  21706.        M ? - help for the mark commands
  21707.  
  21708.  W S - save the current window configuration to a name
  21709.  W D - delete a window configuration
  21710.  W W - apply a configuration
  21711.  W ? - help for the window configuration commands
  21712.  
  21713.  C-_ - undo, special undo that retracts the most recent
  21714.              changes in message attributes.  Expunges and saves
  21715.              cannot be undone.  C-x u is also bound to this
  21716.              command.
  21717.  
  21718.    L - reload your VM init file, ~/.vm
  21719.  
  21720.    ? - help
  21721.  
  21722.    ! - run a shell command
  21723.    | - run a shell command with the current message as input
  21724.  
  21725.  M-C - view conditions under which you may redistribute VM
  21726.  M-W - view the details of VM's lack of a warranty
  21727.  
  21728. Variables:
  21729.    vm-auto-center-summary
  21730.    vm-auto-folder-alist
  21731.    vm-auto-folder-case-fold-search
  21732.    vm-auto-get-new-mail
  21733.    vm-auto-next-message
  21734.    vm-berkeley-mail-compatibility
  21735.    vm-check-folder-types
  21736.    vm-convert-folder-types
  21737.    vm-circular-folders
  21738.    vm-confirm-new-folders
  21739.    vm-confirm-quit
  21740.    vm-crash-box
  21741.    vm-delete-after-archiving
  21742.    vm-delete-after-bursting
  21743.    vm-delete-after-saving
  21744.    vm-delete-empty-folders
  21745.    vm-digest-burst-type
  21746.    vm-digest-center-preamble
  21747.    vm-digest-preamble-format
  21748.    vm-digest-send-type
  21749.    vm-folder-directory
  21750.    vm-folder-read-only
  21751.    vm-follow-summary-cursor
  21752.    vm-forwarded-headers
  21753.    vm-forwarding-digest-type
  21754.    vm-forwarding-subject-format
  21755.    vm-gargle-uucp
  21756.    vm-highlighted-header-regexp
  21757.    vm-honor-page-delimiters
  21758.    vm-in-reply-to-format
  21759.    vm-included-text-attribution-format
  21760.    vm-included-text-prefix
  21761.    vm-inhibit-startup-message
  21762.    vm-invisible-header-regexp
  21763.    vm-jump-to-new-messages
  21764.    vm-jump-to-unread-messages
  21765.    vm-keep-sent-messages
  21766.    vm-mail-header-from
  21767.    vm-mail-mode-hook
  21768.    vm-mail-window-percentage
  21769.    vm-mode-hook
  21770.    vm-move-after-deleting
  21771.    vm-move-after-undeleting
  21772.    vm-mutable-windows
  21773.    vm-preview-lines
  21774.    vm-preview-read-messages
  21775.    vm-primary-inbox
  21776.    vm-recognize-pop-maildrops
  21777.    vm-reply-ignored-addresses
  21778.    vm-reply-subject-prefix
  21779.    vm-resend-bounced-headers
  21780.    vm-resend-bounced-discard-header-regexp
  21781.    vm-resend-headers
  21782.    vm-resend-discard-header-regexp
  21783.    vm-retain-message-order
  21784.    vm-rfc1153-digest-discard-header-regexp
  21785.    vm-rfc1153-digest-headers
  21786.    vm-rfc934-digest-discard-header-regexp
  21787.    vm-rfc934-digest-headers
  21788.    vm-search-using-regexps
  21789.    vm-skip-deleted-messages
  21790.    vm-skip-read-messages
  21791.    vm-spool-files
  21792.    vm-startup-with-summary
  21793.    vm-strip-reply-headers
  21794.    vm-summary-format
  21795.    vm-unforwarded-header-regexp
  21796.    vm-virtual-folder-alist
  21797.    vm-virtual-mirror
  21798.    vm-visible-headers
  21799.    vm-visit-when-saving
  21800.    vm-window-configuration-file
  21801.  
  21802. Fvm-visit-folder
  21803. Visit a mail file with View Mail, an alternate mail reader for emacs.
  21804. See the description of the `vm' and `vm-mode' functions.
  21805.  
  21806. VM will parse and present its messages to you in the usual way.
  21807.  
  21808. First arg FOLDER specifies the mail file to visit.  When this
  21809. command is called interactively the file name is read from the
  21810. minibuffer.
  21811.  
  21812. Prefix arg or optional second arg READ-ONLY non-nil indicates
  21813. that the folder should be considered read only.  No attribute
  21814. changes, messages additions or deletions will be allowed in the
  21815. visited folder.
  21816. Fvm-mail
  21817. Send a mail message from within View Mail, or from without.
  21818. Freset-device-font-menus
  21819. Generates the `Font', `Size', and `Weight' submenus for the Options menu.
  21820. This is run the first time that a font-menu is needed for each device.
  21821. If you don't like the lazy invocation of this function, you can add it to
  21822. `create-device-hook' and that will make the font menus respond more quickly
  21823. when they are selected for the first time.  If you add fonts to your system, 
  21824. or if you change your font path, you can call this to re-initialize the menus.
  21825. Furl-get-authentication
  21826. Return an authorization string suitable for use in the WWW-Authenticate
  21827. header in an HTTP/1.0 request.
  21828.  
  21829. URL    is the url you are requesting authorization to.  This can be either a
  21830.        string representing the URL, or the parsed representation returned by
  21831.        `url-generic-parse-url'
  21832. REALM  is the realm at a specific site we are looking for.  This should be a
  21833.        string specifying the exact realm, or nil or the symbol 'any' to
  21834.        specify that the filename portion of the URL should be used as the
  21835.        realm
  21836. TYPE   is the type of authentication to be returned.  This is either a string
  21837.        representing the type (basic, digest, etc), or nil or the symbol 'any'
  21838.        to specify that any authentication is acceptable.  If requesting 'any'
  21839.        the strongest matching authentication will be returned.  If this is
  21840.        wrong, its no big deal, the error from the server will specify exactly
  21841.        what type of auth to use
  21842. PROMPT is boolean - specifies whether to ask the user for a username/password
  21843.        if one cannot be found in the cache
  21844. Furl-register-auth-scheme
  21845. Register an HTTP authentication method.
  21846.  
  21847. TYPE     is a string or symbol specifying the name of the method.   This
  21848.          should be the same thing you expect to get returned in an Authenticate
  21849.          header in HTTP/1.0 - it will be downcased.
  21850. FUNCTION is the function to call to get the authorization information.  This
  21851.          defaults to `url-?-auth', where ? is TYPE
  21852. RATING   a rating between 1 and 10 of the strength of the authentication.
  21853.          This is used when asking for the best authentication for a specific
  21854.          URL.  The item with the highest rating is returned.
  21855. Furl-store-in-cache
  21856. Store buffer BUFF in the cache
  21857. Furl-is-cached
  21858. Return non-nil if the URL is cached.
  21859. Furl-cache-extract
  21860. Extract FNAM from the local disk cache
  21861. Furl-cache-expired
  21862. Return t iff a cached file has expired.
  21863. Furl-cookie-retrieve
  21864. Retrieves all the netscape-style cookies for a specified HOST and PATH
  21865. Furl-gateway-nslookup-host
  21866. Attempt to resolve the given HOSTNAME using nslookup if possible.
  21867. Furl-open-stream
  21868. Open a stream to a host
  21869. Furl-file-attributes
  21870. Return a list of attributes of URL.
  21871. Value is nil if specified file cannot be opened.
  21872. Otherwise, list elements are:
  21873.  0. t for directory, string (name linked to) for symbolic link, or nil.
  21874.  1. Number of links to file.
  21875.  2. File uid.
  21876.  3. File gid.
  21877.  4. Last access time, as a list of two integers.
  21878.   First integer has high-order 16 bits of time, second has low 16 bits.
  21879.  5. Last modification time, likewise.
  21880.  6. Last status change time, likewise.
  21881.  7. Size in bytes. (-1, if number is out of range).
  21882.  8. File modes, as a string of ten letters or dashes as in ls -l.
  21883.     If URL is on an http server, this will return the content-type if possible.
  21884.  9. t iff file's gid would change if file were deleted and recreated.
  21885. 10. inode number.
  21886. 11. Device number.
  21887.  
  21888. If file does not exist, returns nil.
  21889. Furl-normalize-url
  21890. Return a 'normalized' version of URL.  This strips out default port
  21891. numbers, etc.
  21892. Furl-buffer-visiting
  21893. Return the name of a buffer (if any) that is visiting URL.
  21894. Furl-setup-save-timer
  21895. Reset the history list timer.
  21896. Furl-do-setup
  21897. Do setup - this is to avoid conflict with user settings when URL is
  21898. dumped with emacs.
  21899. Furl-get-url-at-point
  21900. Get the URL closest to point, but don't change your
  21901. position. Has a preference for looking backward when not
  21902. directly on a symbol.
  21903. Furl-popup-info
  21904. Retrieve the HTTP/1.0 headers and display them in a temp buffer.
  21905. Furl-retrieve
  21906. Retrieve a document over the World Wide Web.
  21907. The document should be specified by its fully specified
  21908. Uniform Resource Locator.  No parsing is done, just return the
  21909. document as the server sent it.  The document is left in the
  21910. buffer specified by url-working-buffer.  url-working-buffer is killed
  21911. immediately before starting the transfer, so that no buffer-local
  21912. variables interfere with the retrieval.  HTTP/1.0 redirection will
  21913. be honored before this function exits.
  21914. Fw3-read-html-bookmarks
  21915. Import an HTML file into the Emacs-w3 format.
  21916. Fw3-hotlist-apropos
  21917. Show hotlist entries matching REGEXP.
  21918. Fw3-hotlist-refresh
  21919. Reload the default hotlist file into memory
  21920. Fw3-hotlist-delete
  21921. Deletes a document from your hotlist file
  21922. Fw3-hotlist-rename-entry
  21923. Rename a hotlist item
  21924. Fw3-hotlist-append
  21925. Append a hotlist to the one in memory
  21926. Fw3-parse-hotlist
  21927. Read in the hotlist specified by FNAME
  21928. Fw3-use-hotlist
  21929. Possibly go to a link in your W3/Mosaic hotlist.
  21930. This is part of the emacs World Wide Web browser.  It will prompt for
  21931. one of the items in your 'hotlist'.  A hotlist is a list of often
  21932. visited or interesting items you have found on the World Wide Web.
  21933. Fw3-hotlist-add-document-at-point
  21934. Add the document pointed to by the hyperlink under point to the hotlist.
  21935. Fw3-hotlist-add-document
  21936. Add this documents url to the hotlist
  21937. Fw3-show-dvi
  21938. Uses xdvi to show DVI file created from `w3-parse-tree-to-latex'.
  21939. Fw3-print-this-url
  21940. Print out the current document (in LaTeX format)
  21941. Fw3-print-url-under-point
  21942. Print out the url under point (in LaTeX format)
  21943. Fw3-display-stylesheet
  21944. Display the stylesheet for the current document.
  21945. Fw3-open-local
  21946. Find a local file, and interpret it as a hypertext document.
  21947. It will prompt for an existing file or directory, and retrieve it as a
  21948. hypertext document.
  21949. Fw3-find-file
  21950. Find a local file, and interpret it as a hypertext document.
  21951. It will prompt for an existing file or directory, and retrieve it as a
  21952. hypertext document.
  21953. Fw3-fetch-other-frame
  21954. Attempt to follow the hypertext reference under point in a new frame.
  21955. With prefix-arg P, ignore viewers and dump the link straight
  21956. to disk.
  21957. Fw3-fetch
  21958. Retrieve a document over the World Wide Web.
  21959. Defaults to URL of the current document, if any.
  21960. With prefix argument, use the URL of the hyperlink under point instead.
  21961. Fw3-maybe-follow-link-mouse
  21962. Maybe follow a hypertext link under point.
  21963. If there is no link under point, this will try using
  21964. url-get-url-at-point
  21965. Fw3-maybe-follow-link
  21966. Maybe follow a hypertext link under point.
  21967. If there is no link under point, this will try using
  21968. url-get-url-at-point
  21969. Fw3-follow-url-at-point-other-frame
  21970. Follow the URL under PT, defaults to link under (point)
  21971. Fw3-follow-url-at-point
  21972. Follow the URL under PT, defaults to link under (point)
  21973. Fw3-preview-this-buffer
  21974. See what this buffer will look like when its formatted as HTML.
  21975. HTML is the HyperText Markup Language used by the World Wide Web to
  21976. specify formatting for text.  More information on HTML can be found at
  21977. ftp.w3.org:/pub/www/doc.
  21978. Fw3-version
  21979. Show the version number of W3 in the minibuffer.
  21980. If optional argument HERE is non-nil, insert info at point.
  21981. Fw3
  21982. Retrieve the default World Wide Web home page.
  21983. The World Wide Web is a global hypertext system started by CERN in
  21984. Switzerland in 1991.
  21985.  
  21986. The home page is specified by the variable w3-default-homepage.  The
  21987. document should be specified by its fully specified Uniform Resource
  21988. Locator.  The document will be parsed as HTML (if appropriate) and
  21989. displayed in a new buffer.
  21990. Fw3-do-setup
  21991. Do setup - this is to avoid conflict with user settings when W3 is
  21992. dumped with emacs.
  21993. Fw3-follow-link-other-frame
  21994. Attempt to follow the hypertext reference under point in a new frame.
  21995. With prefix-arg P, ignore viewers and dump the link straight
  21996. to disk.
  21997. Fw3-follow-link
  21998. Attempt to follow the hypertext reference under point.
  21999. With prefix-arg P, ignore viewers and dump the link straight
  22000. to disk.
  22001. Fvm
  22002. Read mail under Emacs.
  22003. Optional first arg FOLDER specifies the folder to visit.  It defaults
  22004. to the value of vm-primary-inbox.  The folder buffer is put into VM
  22005. mode, a major mode for reading mail.
  22006.  
  22007. Prefix arg or optional second arg READ-ONLY non-nil indicates
  22008. that the folder should be considered read only.  No attribute
  22009. changes, message additions or deletions will be allowed in the
  22010. visited folder.
  22011.  
  22012. Visiting the primary inbox causes any contents of the system mailbox to
  22013. be moved and appended to the resulting buffer.
  22014.  
  22015. All the messages can be read by repeatedly pressing SPC.  Use `n'ext and
  22016. `p'revious to move about in the folder.  Messages are marked for
  22017. deletion with `d', and saved to another folder with `s'.  Quitting VM
  22018. with `q' expunges deleted messages and saves the buffered folder to
  22019. disk.
  22020.  
  22021. See the documentation for vm-mode for more information.
  22022. Fvm-other-frame
  22023. Like vm, but run in a newly created frame.
  22024. Fvm-other-window
  22025. Like vm, but run in a different window.
  22026. Fvm-mode
  22027. Major mode for reading mail.
  22028.  
  22029. This is VM 6.43.
  22030.  
  22031. Commands:
  22032.    h - summarize folder contents
  22033.  C-t - toggle threads display
  22034.  
  22035.    n - go to next message
  22036.    p - go to previous message
  22037.    N - like `n' but ignores skip-variable settings
  22038.    P - like `p' but ignores skip-variable settings
  22039.  M-n - go to next unread message
  22040.  M-p - go to previous unread message
  22041.  RET - go to numbered message (uses prefix arg or prompts in minibuffer)
  22042.  TAB - go to last message seen
  22043.    ^ - go to parent of this message
  22044.  M-s - incremental search through the folder
  22045.  
  22046.    t - display hidden headers
  22047.  SPC - expose message body or scroll forward a page
  22048.    b - scroll backward a page
  22049.    < - go to beginning of current message
  22050.    > - go to end of current message
  22051.  
  22052.    d - delete message, prefix arg deletes messages forward
  22053.  C-d - delete message, prefix arg deletes messages backward
  22054.    u - undelete
  22055.    k - flag for deletion all messages with same subject as the current message
  22056.  
  22057.    r - reply (only to the sender of the message)
  22058.    R - reply with included text from the current message
  22059.  M-r - extract and resend bounced message
  22060.    f - followup (reply to all recipients of message)
  22061.    F - followup with included text from the current message
  22062.    z - forward the current message
  22063.    m - send a message
  22064.    B - resend the current message to another user.
  22065.    c - continue composing the most recent message you were composing
  22066.  
  22067.    @ - digestify and mail entire folder contents (the folder is not modified)
  22068.    * - burst a digest into individual messages, and append and assimilate these
  22069.        messages into the current folder.
  22070.  
  22071.    G - sort messages by various keys
  22072.  
  22073.    g - get any new mail that has arrived in the system mailbox
  22074.        (new mail is appended to the disk and buffer copies of the
  22075.        primary inbox.)
  22076.    v - visit another mail folder
  22077.  
  22078.    e - edit the current message
  22079.    j - discard cached information about the current message
  22080.  
  22081.    s - save current message in a folder (appends if folder already exists)
  22082.    w - write current message to a file without its headers (appends if exists)
  22083.    S - save entire folder to disk, does not expunge
  22084.    A - save unfiled messages to their vm-auto-folder-alist specified folders
  22085.    # - expunge deleted messages (without saving folder)
  22086.    q - quit VM, deleted messages are not expunged, folder is
  22087.        saved to disk if it is modified.  new messages are changed
  22088.        to be flagged as just unread.
  22089.    x - exit VM with no change to the folder
  22090.  
  22091.  M N - use marks; the next vm command will affect only marked messages
  22092.        if it makes sense for the command to do so.  These commands
  22093.        apply and remove marks to messages:
  22094.  
  22095.        M M - mark the current message
  22096.        M U - unmark the current message
  22097.        M m - mark all messages
  22098.        M u - unmark all messages
  22099.        M C - mark messages matched by a virtual folder selector
  22100.        M c - unmark messages matched by a virtual folder selector
  22101.        M T - mark thread tree rooted at the current message
  22102.        M t - unmark thread tree rooted at the current message
  22103.        M S - mark messages with the same subject as the current message
  22104.        M s - unmark messages with the same subject as the current message
  22105.        M A - mark messages with the same author as the current message
  22106.        M a - unmark messages with the same author as the current message
  22107.        M R - mark messages within the point/mark region in the summary
  22108.        M r - unmark messages within the point/mark region in the summary
  22109.        M V - toggle the marked-ness of all messages
  22110.  
  22111.        M ? - partial help for mark commands
  22112.  
  22113.  W S - save the current window configuration to a name
  22114.  W D - delete a window configuration
  22115.  W W - apply a configuration
  22116.  W ? - help for the window configuration commands
  22117.  
  22118.  V V - visit a virtual folder (must be defined in vm-virtual-folder-alist)
  22119.  V C - create a virtual folder composed of a subset of the
  22120.        current folder's messages.
  22121.  V A - create a virtual folder containing all the messages in the current
  22122.        folder with the same author as the current message.
  22123.  V S - create a virtual folder containing all the messages in the current
  22124.        folder with the same subject as the current message.
  22125.  V X - apply the selectors of a named virtual folder to the
  22126.        messages in the current folder and create a virtual folder
  22127.        containing the selected messages.
  22128.  V M - toggle whether this virtual folder's messages mirror the
  22129.        underlying real messages' attributes.
  22130.  V ? - help for virtual folder commands
  22131.  
  22132.  C-_ - undo, special undo that retracts the most recent
  22133.              changes in message attributes and labels.  Expunges,
  22134.              message edits, and saves cannot be undone.  C-x u is
  22135.              also bound to this command.
  22136.  
  22137.    a - set message attributes
  22138.  
  22139.  l a - add labels to message
  22140.  l d - delete labels from message
  22141.  
  22142.    L - reload your VM init file, ~/.vm
  22143.  
  22144.    % - change a folder to another type
  22145.  
  22146.    ? - help
  22147.  
  22148.    ! - run a shell command
  22149.    | - run a shell command with the current message as input
  22150.  
  22151.  M-C - view conditions under which you may redistribute VM
  22152.  M-W - view the details of VM's lack of a warranty
  22153.  
  22154. Use M-x vm-submit-bug-report to submit a bug report.
  22155.  
  22156. Variables:
  22157.    vm-arrived-message-hook
  22158.    vm-arrived-messages-hook
  22159.    vm-auto-center-summary
  22160.    vm-auto-decode-mime-messages
  22161.    vm-auto-displayed-mime-content-types
  22162.    vm-auto-folder-alist
  22163.    vm-auto-folder-case-fold-search
  22164.    vm-auto-get-new-mail
  22165.    vm-auto-next-message
  22166.    vm-berkeley-mail-compatibility
  22167.    vm-burst-digest-messages-inherit-labels
  22168.    vm-check-folder-types
  22169.    vm-circular-folders
  22170.    vm-confirm-new-folders
  22171.    vm-confirm-quit
  22172.    vm-convert-folder-types
  22173.    vm-crash-box
  22174.    vm-crash-box-suffix
  22175.    vm-default-folder-type
  22176.    vm-delete-after-archiving
  22177.    vm-delete-after-bursting
  22178.    vm-delete-after-saving
  22179.    vm-delete-empty-folders
  22180.    vm-digest-burst-type
  22181.    vm-digest-center-preamble
  22182.    vm-digest-preamble-format
  22183.    vm-digest-send-type
  22184.    vm-display-buffer-hook
  22185.    vm-display-using-mime
  22186.    vm-edit-message-hook
  22187.    vm-folder-directory
  22188.    vm-folder-read-only
  22189.    vm-follow-summary-cursor
  22190.    vm-forward-message-hook
  22191.    vm-forwarded-headers
  22192.    vm-forwarding-digest-type
  22193.    vm-forwarding-subject-format
  22194.    vm-frame-parameter-alist
  22195.    vm-frame-per-completion
  22196.    vm-frame-per-composition
  22197.    vm-frame-per-edit
  22198.    vm-frame-per-folder
  22199.    vm-frame-per-help
  22200.    vm-frame-per-summary
  22201.    vm-highlighted-header-face
  22202.    vm-highlighted-header-regexp
  22203.    vm-honor-page-delimiters
  22204.    vm-image-directory
  22205.    vm-index-file-suffix
  22206.    vm-in-reply-to-format
  22207.    vm-included-text-attribution-format
  22208.    vm-included-text-discard-header-regexp
  22209.    vm-included-text-headers
  22210.    vm-included-text-prefix
  22211.    vm-invisible-header-regexp
  22212.    vm-jump-to-new-messages
  22213.    vm-jump-to-unread-messages
  22214.    vm-keep-crash-boxes
  22215.    vm-keep-sent-messages
  22216.    vm-mail-check-interval
  22217.    vm-mail-header-from
  22218.    vm-mail-mode-hook
  22219.    vm-make-crash-box-name
  22220.    vm-make-spool-file-name
  22221.    vm-mime-7bit-composition-charset
  22222.    vm-mime-8bit-composition-charset
  22223.    vm-mime-8bit-text-transfer-encoding
  22224.    vm-mime-alternative-select-method
  22225.    vm-mime-attachment-auto-type-alist
  22226.    vm-mime-attachment-save-directory
  22227.    vm-mime-avoid-folding-content-type
  22228.    vm-mime-base64-decoder-program
  22229.    vm-mime-base64-decoder-switches
  22230.    vm-mime-base64-encoder-program
  22231.    vm-mime-base64-encoder-switches
  22232.    vm-mime-button-format-alist
  22233.    vm-mime-button-face
  22234.    vm-mime-charset-font-alist
  22235.    vm-mime-default-face-charsets
  22236.    vm-mime-digest-discard-header-regexp
  22237.    vm-mime-digest-headers
  22238.    vm-mime-display-function
  22239.    vm-mime-external-content-types-alist
  22240.    vm-mime-ignore-mime-version
  22241.    vm-mime-internal-content-types
  22242.    vm-mime-max-message-size
  22243.    vm-mode-hook
  22244.    vm-mosaic-program
  22245.    vm-mosaic-program-switches
  22246.    vm-move-after-deleting
  22247.    vm-move-after-killing
  22248.    vm-move-after-undeleting
  22249.    vm-move-messages-physically
  22250.    vm-mutable-frames
  22251.    vm-mutable-windows
  22252.    vm-netscape-program
  22253.    vm-netscape-program-switches
  22254.    vm-pop-auto-expunge-alist
  22255.    vm-pop-bytes-per-session
  22256.    vm-pop-expunge-after-retrieving
  22257.    vm-pop-max-message-size
  22258.    vm-pop-md5-program
  22259.    vm-pop-messages-per-session
  22260.    vm-popup-menu-on-mouse-3
  22261.    vm-preferences-file
  22262.    vm-preview-lines
  22263.    vm-preview-read-messages
  22264.    vm-primary-inbox
  22265.    vm-quit-hook
  22266.    vm-recognize-pop-maildrops
  22267.    vm-reply-hook
  22268.    vm-reply-ignored-addresses
  22269.    vm-reply-ignored-reply-tos
  22270.    vm-reply-subject-prefix
  22271.    vm-resend-bounced-discard-header-regexp
  22272.    vm-resend-bounced-headers
  22273.    vm-resend-bounced-message-hook
  22274.    vm-resend-discard-header-regexp
  22275.    vm-resend-headers
  22276.    vm-resend-message-hook
  22277.    vm-retrieved-spooled-mail-hook
  22278.    vm-rfc1153-digest-discard-header-regexp
  22279.    vm-rfc1153-digest-headers
  22280.    vm-rfc934-digest-discard-header-regexp
  22281.    vm-rfc934-digest-headers
  22282.    vm-search-using-regexps
  22283.    vm-select-message-hook
  22284.    vm-select-new-message-hook
  22285.    vm-select-unread-message-hook
  22286.    vm-send-digest-hook
  22287.    vm-send-using-mime
  22288.    vm-skip-deleted-messages
  22289.    vm-skip-read-messages
  22290.    vm-spool-file-suffixes
  22291.    vm-spool-files
  22292.    vm-startup-with-summary
  22293.    vm-strip-reply-headers
  22294.    vm-summary-arrow
  22295.    vm-summary-format
  22296.    vm-summary-highlight-face
  22297.    vm-summary-mode-hook
  22298.    vm-summary-redo-hook
  22299.    vm-summary-show-threads
  22300.    vm-summary-thread-indent-level
  22301.    vm-tale-is-an-idiot
  22302.    vm-temp-file-directory
  22303.    vm-toolbar-pixmap-directory
  22304.    vm-trust-From_-with-Content-Length
  22305.    vm-undisplay-buffer-hook
  22306.    vm-unforwarded-header-regexp
  22307.    vm-url-browser
  22308.    vm-url-search-limit
  22309.    vm-use-menus
  22310.    vm-use-toolbar
  22311.    vm-virtual-folder-alist
  22312.    vm-virtual-mirror
  22313.    vm-visible-headers
  22314.    vm-visit-folder-hook
  22315.    vm-visit-when-saving
  22316.    vm-warp-mouse-to-new-frame
  22317.    vm-window-configuration-file
  22318.  
  22319. Fvm-visit-folder
  22320. Visit a mail file.
  22321. VM will parse and present its messages to you in the usual way.
  22322.  
  22323. First arg FOLDER specifies the mail file to visit.  When this
  22324. command is called interactively the file name is read from the
  22325. minibuffer.
  22326.  
  22327. Prefix arg or optional second arg READ-ONLY non-nil indicates
  22328. that the folder should be considered read only.  No attribute
  22329. changes, messages additions or deletions will be allowed in the
  22330. visited folder.
  22331. Fvm-visit-folder-other-frame
  22332. Like vm-visit-folder, but run in a newly created frame.
  22333. Fvm-visit-folder-other-window
  22334. Like vm-visit-folder, but run in a different window.
  22335. Fvm-visit-virtual-folder-other-frame
  22336. Like vm-visit-virtual-folder, but run in a newly created frame.
  22337. Fvm-visit-virtual-folder-other-window
  22338. Like vm-visit-virtual-folder, but run in a different window.
  22339. Fvm-mail
  22340. Send a mail message from within VM, or from without.
  22341. Optional argument TO is a string that should contain a comma separated
  22342. recipient list.
  22343. Fvm-mail-other-frame
  22344. Like vm-mail, but run in a newly created frame.
  22345. Optional argument TO is a string that should contain a comma separated
  22346. recipient list.
  22347. Fvm-mail-other-window
  22348. Like vm-mail, but run in a different window.
  22349. Optional argument TO is a string that should contain a comma separated
  22350. recipient list.
  22351. Fvm-submit-bug-report
  22352. Submit a bug report, with pertinent information to the VM bug list.
  22353. Ftoggle-viper-mode
  22354. Toggle Viper on/off.
  22355. If Viper is enabled, turn it off. Otherwise, turn it on.
  22356. Fviper-mode
  22357. Turn on Viper emulation of Vi.
  22358. Vvc-default-back-end
  22359. *Back-end actually used by this interface; may be SCCS or RCS.
  22360. The value is only computed when needed to avoid an expensive search.
  22361. Vvc-handle-cvs
  22362. *If non-nil, use VC for files managed with CVS.
  22363. If it is nil, don't use VC for those files.
  22364. Vvc-rcsdiff-knows-brief
  22365. *Indicates whether rcsdiff understands the --brief option.
  22366. The value is either `yes', `no', or nil.  If it is nil, VC tries
  22367. to use --brief and sets this variable to remember whether it worked.
  22368. Vvc-path
  22369. *List of extra directories to search for version control commands.
  22370. Vvc-master-templates
  22371. *Where to look for version-control master files.
  22372. The first pair corresponding to a given back end is used as a template
  22373. when creating new masters.
  22374. Vvc-make-backup-files
  22375. *If non-nil, backups of registered files are made as with other files.
  22376. If nil (the default), files covered by version control don't get backups.
  22377. Vvc-follow-symlinks
  22378. *Indicates what to do if you visit a symbolic link to a file
  22379. that is under version control.  Editing such a file through the
  22380. link bypasses the version control system, which is dangerous and
  22381. probably not what you want.  
  22382.   If this variable is t, VC follows the link and visits the real file,
  22383. telling you about it in the echo area.  If it is `ask', VC asks for
  22384. confirmation whether it should follow the link.  If nil, the link is
  22385. visited and a warning displayed.
  22386. Vvc-display-status
  22387. *If non-nil, display revision number and lock status in modeline.
  22388. Otherwise, not displayed.
  22389. Vvc-consult-headers
  22390. *If non-nil, identify work files by searching for version headers.
  22391. Vvc-keep-workfiles
  22392. *If non-nil, don't delete working files after registering changes.
  22393. If the back-end is CVS, workfiles are always kept, regardless of the
  22394. value of this flag.
  22395. Vvc-mistrust-permissions
  22396. *If non-nil, don't assume that permissions and ownership track 
  22397. version-control status.  If nil, do rely on the permissions.
  22398. See also variable `vc-consult-headers'.
  22399. Vvc-file-prop-obarray
  22400. Obarray for per-file properties.
  22401. Fvc-name
  22402. Return the master name of a file, nil if it is not registered.
  22403. For CVS, the full name of CVS/Entries is returned.
  22404. Fvc-backend
  22405. Return the version-control type of a file, nil if it is not registered.
  22406. Fvc-buffer-backend
  22407. Return the version-control type of the visited file, or nil if none.
  22408. Fvc-toggle-read-only
  22409. Change read-only status of current buffer, perhaps via version control.
  22410. If the buffer is visiting a file registered with version control,
  22411. then check the file in or out.  Otherwise, just change the read-only flag
  22412. of the buffer.  With prefix argument, ask for version number.
  22413. Fvc-mode-line
  22414. Set `vc-mode' to display type of version control for FILE.
  22415. The value is set in the current buffer, which should be the buffer
  22416. visiting FILE.  Second optional arg LABEL is put in place of version
  22417. control system name.
  22418. Fvc-file-not-found-hook
  22419. When file is not found, try to check it out from RCS or SCCS.
  22420. Returns t if checkout was successful, nil otherwise.
  22421. Vvc-menu
  22422. Menubar entry for using the revision control system.
  22423. Vvc-before-checkin-hook
  22424. *Normal hook (list of functions) run before a file gets checked in.  
  22425. See `run-hooks'.
  22426. Vvc-checkin-hook
  22427. *Normal hook (List of functions) run after a checkin is done.
  22428. See `run-hooks'.
  22429. Fvc-find-binary
  22430. Look for a command anywhere on the subprocess-command search path.
  22431. Fvc-next-action
  22432. Do the next logical checkin or checkout operation on the current file.
  22433.    If you call this from within a VC dired buffer with no files marked,
  22434. it will operate on the file in the current line.
  22435.    If you call this from within a VC dired buffer, and one or more
  22436. files are marked, it will accept a log message and then operate on
  22437. each one.  The log message will be used as a comment for any register
  22438. or checkin operations, but ignored when doing checkouts.  Attempted
  22439. lock steals will raise an error.
  22440.    A prefix argument lets you specify the version number to use.
  22441.  
  22442. For RCS and SCCS files:
  22443.    If the file is not already registered, this registers it for version
  22444. control and then retrieves a writable, locked copy for editing.
  22445.    If the file is registered and not locked by anyone, this checks out
  22446. a writable and locked file ready for editing.
  22447.    If the file is checked out and locked by the calling user, this
  22448. first checks to see if the file has changed since checkout.  If not,
  22449. it performs a revert.
  22450.    If the file has been changed, this pops up a buffer for entry
  22451. of a log message; when the message has been entered, it checks in the
  22452. resulting changes along with the log message as change commentary.  If
  22453. the variable `vc-keep-workfiles' is non-nil (which is its default), a
  22454. read-only copy of the changed file is left in place afterwards.
  22455.    If the file is registered and locked by someone else, you are given
  22456. the option to steal the lock.
  22457.  
  22458. For CVS files:
  22459.    If the file is not already registered, this registers it for version
  22460. control.  This does a "cvs add", but no "cvs commit".
  22461.    If the file is added but not committed, it is committed.
  22462.    If your working file is changed, but the repository file is
  22463. unchanged, this pops up a buffer for entry of a log message; when the
  22464. message has been entered, it checks in the resulting changes along
  22465. with the logmessage as change commentary.  A writable file is retained.
  22466.    If the repository file is changed, you are asked if you want to
  22467. merge in the changes into your working copy.
  22468. Fvc-register
  22469. Register the current file into your version-control system.
  22470. The default initial version number, taken to be `vc-default-init-version',
  22471. can be overridden by giving a prefix arg.
  22472. Fvc-checkout
  22473. Retrieve a copy of the latest version of the given file.
  22474. Fvc-diff
  22475. Display diffs between file versions.
  22476. Normally this compares the current file and buffer with the most recent 
  22477. checked in version of that file.  This uses no arguments.
  22478. With a prefix argument, it reads the file name to use
  22479. and two version designators specifying which versions to compare.
  22480. Fvc-version-diff
  22481. For FILE, report diffs between two stored versions REL1 and REL2 of it.
  22482. If FILE is a directory, generate diffs between versions for all registered
  22483. files in or below it.
  22484. Fvc-version-other-window
  22485. Visit version REV of the current buffer in another window.
  22486. If the current buffer is named `F', the version is named `F.~REV~'.
  22487. If `F.~REV~' already exists, it is used instead of being re-created.
  22488. Fvc-insert-headers
  22489. Insert headers in a file for use with your version-control system.
  22490. Headers desired are inserted at the start of the buffer, and are pulled from
  22491. the variable `vc-header-alist'.
  22492. Fvc-directory
  22493. Show version-control status of the current directory and subdirectories.
  22494. Normally it creates a Dired buffer that lists only the locked files
  22495. in all these directories.  With a prefix argument, it lists all files.
  22496. Fvc-create-snapshot
  22497. Make a snapshot called NAME.
  22498. The snapshot is made from all registered files at or below the current
  22499. directory.  For each file, the version level of its latest
  22500. version becomes part of the named configuration.
  22501. Fvc-retrieve-snapshot
  22502. Retrieve the snapshot called NAME.
  22503. This function fails if any files are locked at or below the current directory
  22504. Otherwise, all registered files are checked out (unlocked) at their version
  22505. levels in the snapshot.
  22506. Fvc-print-log
  22507. List the change log of the current buffer in a window.
  22508. Fvc-revert-buffer
  22509. Revert the current buffer's file back to the latest checked-in version.
  22510. This asks for confirmation if the buffer contents are not identical
  22511. to that version.
  22512. If the back-end is CVS, this will give you the most recent revision of
  22513. the file on the branch you are editing.
  22514. Fvc-cancel-version
  22515. Get rid of most recently checked in version of this file.
  22516. A prefix argument means do not revert the buffer afterwards.
  22517. Fvc-rename-file
  22518. Rename file OLD to NEW, and rename its master file likewise.
  22519. Fvc-update-change-log
  22520. Find change log file and add entries from recent RCS/CVS logs.
  22521. Normally, find log entries for all registered files in the default
  22522. directory using `rcs2log', which finds CVS logs preferentially.
  22523. The mark is left at the end of the text prepended to the change log.
  22524.  
  22525. With prefix arg of C-u, only find log entries for the current buffer's file.
  22526.  
  22527. With any numeric prefix arg, find log entries for all currently visited
  22528. files that are under version control.  This puts all the entries in the
  22529. log for the default directory, which may not be appropriate.
  22530.  
  22531. From a program, any arguments are assumed to be filenames and are
  22532. passed to the `rcs2log' script after massaging to be relative to the
  22533. default directory.
  22534. Vad-redefinition-action
  22535. *Defines what to do with redefinitions during Advice de/activation.
  22536. Redefinition occurs if a previously activated function that already has an
  22537. original definition associated with it gets redefined and then de/activated.
  22538. In such a case we can either accept the current definition as the new
  22539. original definition, discard the current definition and replace it with the
  22540. old original, or keep it and raise an error.  The values `accept', `discard',
  22541. `error' or `warn' govern what will be done.  `warn' is just like `accept' but
  22542. it additionally prints a warning message.  All other values will be
  22543. interpreted as `error'.
  22544. Vad-default-compilation-action
  22545. *Defines whether to compile advised definitions during activation.
  22546. A value of `always' will result in unconditional compilation, `never' will
  22547. always avoid compilation, `maybe' will compile if the byte-compiler is already
  22548. loaded, and `like-original' will compile if the original definition of the
  22549. advised function is compiled or a built-in function. Every other value will
  22550. be interpreted as `maybe'. This variable will only be considered if the 
  22551. COMPILE argument of `ad-activate' was supplied as nil.
  22552. Fad-add-advice
  22553. Adds a piece of ADVICE to FUNCTION's list of advices in CLASS.
  22554. If FUNCTION already has one or more pieces of advice of the specified
  22555. CLASS then POSITION determines where the new piece will go.  The value
  22556. of POSITION can either be `first', `last' or a number where 0 corresponds
  22557. to `first'.  Numbers outside the range will be mapped to the closest
  22558. extreme position.  If there was already a piece of ADVICE with the same
  22559. name, then the position argument will be ignored and the old advice
  22560. will be overwritten with the new one.
  22561.     If the FUNCTION was not advised already, then its advice info will be 
  22562. initialized.  Redefining a piece of advice whose name is part of the cache-id
  22563. will clear the cache.
  22564. Fdefadvice
  22565. Defines a piece of advice for FUNCTION (a symbol).
  22566. The syntax of `defadvice' is as follows:
  22567.  
  22568.   (defadvice FUNCTION (CLASS NAME [POSITION] [ARGLIST] FLAG...)
  22569.     [DOCSTRING] [INTERACTIVE-FORM]
  22570.     BODY... )
  22571.  
  22572. FUNCTION ::= Name of the function to be advised.
  22573. CLASS ::= `before' | `around' | `after' | `activation' | `deactivation'.
  22574. NAME ::= Non-nil symbol that names this piece of advice.
  22575. POSITION ::= `first' | `last' | NUMBER. Optional, defaults to `first',
  22576.     see also `ad-add-advice'.
  22577. ARGLIST ::= An optional argument list to be used for the advised function
  22578.     instead of the argument list of the original.  The first one found in
  22579.     before/around/after-advices will be used.
  22580. FLAG ::= `protect'|`disable'|`activate'|`compile'|`preactivate'|`freeze'.
  22581.     All flags can be specified with unambiguous initial substrings.
  22582. DOCSTRING ::= Optional documentation for this piece of advice.
  22583. INTERACTIVE-FORM ::= Optional interactive form to be used for the advised
  22584.     function.  The first one found in before/around/after-advices will be used.
  22585. BODY ::= Any s-expression.
  22586.  
  22587. Semantics of the various flags:
  22588. `protect': The piece of advice will be protected against non-local exits in
  22589. any code that precedes it.  If any around-advice of a function is protected
  22590. then automatically all around-advices will be protected (the complete onion).
  22591.  
  22592. `activate': All advice of FUNCTION will be activated immediately if
  22593. FUNCTION has been properly defined prior to this application of `defadvice'.
  22594.  
  22595. `compile': In conjunction with `activate' specifies that the resulting
  22596. advised function should be compiled.
  22597.  
  22598. `disable': The defined advice will be disabled, hence, it will not be used 
  22599. during activation until somebody enables it.
  22600.  
  22601. `preactivate': Preactivates the advised FUNCTION at macro-expansion/compile
  22602. time.  This generates a compiled advised definition according to the current
  22603. advice state that will be used during activation if appropriate.  Only use
  22604. this if the `defadvice' gets actually compiled.
  22605.  
  22606. `freeze': Expands the `defadvice' into a redefining `defun/defmacro' according
  22607. to this particular single advice.  No other advice information will be saved.
  22608. Frozen advices cannot be undone, they behave like a hard redefinition of
  22609. the advised function.  `freeze' implies `activate' and `preactivate'.  The
  22610. documentation of the advised function can be dumped onto the `DOC' file
  22611. during preloading.
  22612.  
  22613. Look at the file `advice.el' for comprehensive documentation.
  22614. Vmake-annotation-hook
  22615. *Function or functions to run immediately after creating an annotation.
  22616. Vbefore-delete-annotation-hook
  22617. *Function or functions to run immediately before deleting an annotation.
  22618. Vafter-delete-annotation-hook
  22619. *Function or functions to run immediately after deleting an annotation.
  22620. Fmake-annotation
  22621. Create a marginal annotation, displayed using GLYPH, at position POS.
  22622. GLYPH may be either a glyph object or a string.  Use layout policy
  22623. LAYOUT and place the annotation in buffer BUFFER.  If POS is nil, point is
  22624. used.  If LAYOUT is nil, `whitespace' is used.  If BUFFER is nil, the
  22625. current buffer is used.  If WITH-EVENT is non-nil, then when an annotation
  22626. is activated, the triggering event is passed as the second arg to the
  22627. annotation function.  If D-GLYPH is non-nil then it is used as the glyph 
  22628. that will be displayed when button1 is down.  If RIGHTP is non-nil then
  22629. the glyph will be displayed on the right side of the buffer instead of the
  22630. left.
  22631. Fdelete-annotation
  22632. Remove ANNOTATION from its buffer.  This does not modify the buffer text.
  22633. Fannotationp
  22634. T if OBJECT is an annotation.
  22635. Fannotation-at
  22636. Return the first annotation at POS in BUFFER.
  22637. BUFFER defaults to the current buffer.  POS defaults to point in BUFFER.
  22638. Fannotations-in-region
  22639. Return all annotations in BUFFER between START and END inclusively.
  22640. Fannotations-at
  22641. Return a list of all annotations at POS in BUFFER.
  22642. If BUFFER is nil, the current buffer is used.  If POS is nil, point is used.
  22643. Fannotation-list
  22644. Return a list of all annotations in BUFFER.
  22645. If BUFFER is nil, the current buffer is used.
  22646. Fall-annotations
  22647. Return a list of all annotations in existence.
  22648. Fgenerate-file-autoloads
  22649. Insert at point a loaddefs autoload section for FILE.
  22650. autoloads are generated for defuns and defmacros in FILE
  22651. marked by `generate-autoload-cookie' (which see).
  22652. If FILE is being visited in a buffer, the contents of the buffer
  22653. are used.
  22654. Fupdate-file-autoloads
  22655. Update the autoloads for FILE in `generated-autoload-file'
  22656. (which FILE might bind in its local variables).
  22657. This functions refuses to update autoloads files.
  22658. Fupdate-autoloads-here
  22659. Update sections of the current buffer generated by `update-file-autoloads'.
  22660. Fupdate-autoloads-from-directory
  22661. Update `generated-autoload-file' with all the current autoloads from DIR.
  22662. This runs `update-file-autoloads' on each .el file in DIR.
  22663. Obsolete autoload entries for files that no longer exist are deleted.
  22664. Fbatch-update-autoloads
  22665. Update the autoloads for the files or directories on the command line.
  22666. Runs `update-file-autoloads' on files and `update-directory-autoloads'
  22667. on directories.  Must be used only with -batch, and kills Emacs on completion.
  22668. Each file will be processed even if an error occurred previously.
  22669. For example, invoke `xemacs -batch -f batch-update-autoloads *.el'.
  22670. The directory to which the auto-autoloads.el file must be the first parameter
  22671. on the command line.
  22672. Fbatch-update-directory
  22673. Update the autoloads for the directory on the command line.
  22674. Runs `update-file-autoloads' on each file in the given directory, must
  22675. be used only with -batch and kills XEmacs on completion.
  22676. Fbrowse-url-netscape
  22677. Ask the Netscape WWW browser to load URL.
  22678.  
  22679. Default to the URL around or before point.  The strings in variable
  22680. `browse-url-netscape-arguments' are also passed to Netscape.
  22681.  
  22682. When called interactively, if variable `browse-url-new-window-p' is
  22683. non-nil, load the document in a new Netscape window, otherwise use a
  22684. random existing one.  A non-nil interactive prefix argument reverses
  22685. the effect of browse-url-new-window-p.
  22686.  
  22687. When called non-interactively, optional second argument NEW-WINDOW is
  22688. used instead of browse-url-new-window-p.
  22689. Fbrowse-url-mosaic
  22690. Ask the XMosaic WWW browser to load URL.
  22691. Default to the URL around or before point.
  22692. Fbrowse-url-grail
  22693. Ask the Grail WWW browser to load URL.
  22694. Default to the URL around or before point.  Runs the program in the
  22695. variable `browse-url-grail'.
  22696. Fbrowse-url-iximosaic
  22697. Ask the IXIMosaic WWW browser to load URL.
  22698. Default to the URL around or before point.
  22699. Fbrowse-url-w3
  22700. Ask the w3 WWW browser to load URL.
  22701. Default to the URL around or before point.
  22702. Fbrowse-url-lynx-xterm
  22703. Ask the Lynx WWW browser to load URL.
  22704. Default to the URL around or before point.  A new Lynx process is run
  22705. in an Xterm window.
  22706. Fbrowse-url-lynx-emacs
  22707. Ask the Lynx WWW browser to load URL.
  22708. Default to the URL around or before point.  Run a new Lynx process in
  22709. an Emacs buffer.
  22710. Fconfig-value-hash-table
  22711. Returns hashtable of configuration parameters and their values.
  22712. Fconfig-value
  22713. Return the value of the configuration parameter CONFIG_SYMBOL.
  22714. Fedit-toolbar
  22715. Alter toolbar characteristics by editing a buffer representing the specified toolbar.
  22716. Pops up a buffer containing a list of the toolbar matching TOOLBAR_NAME.
  22717. Fedit-kbd-macro
  22718. Edit a keyboard macro.
  22719. At the prompt, type any key sequence which is bound to a keyboard macro.
  22720. Or, type `C-x e' or RET to edit the last keyboard macro, `C-h l' to edit
  22721. the last 100 keystrokes as a keyboard macro, or `M-x' to edit a macro by
  22722. its command name.
  22723. With a prefix argument, format the macro in a more concise way.
  22724. Fedit-last-kbd-macro
  22725. Edit the most recently defined keyboard macro.
  22726. Fedit-named-kbd-macro
  22727. Edit a keyboard macro which has been given a name by `name-last-kbd-macro'.
  22728. Fread-kbd-macro
  22729. Read the region as a keyboard macro definition.
  22730. The region is interpreted as spelled-out keystrokes, e.g., "M-x abc RET".
  22731. See documentation for `edmacro-mode' for details.
  22732. The resulting macro is installed as the "current" keyboard macro.
  22733.  
  22734. In Lisp, may also be called with a single STRING argument in which case
  22735. the result is returned rather than being installed as the current macro.
  22736. The result will be a vector of keystrokes.
  22737. Fkbd
  22738. Convert KEYS to the internal Emacs key representation.
  22739. Fformat-kbd-macro
  22740. Return the keyboard macro MACRO as a human-readable string.
  22741. This string is suitable for passing to `read-kbd-macro'.
  22742. Second argument VERBOSE means to put one command per line with comments.
  22743. If VERBOSE is nil, put everything on one line.
  22744. Feldoc-mode
  22745. *Enable or disable eldoc mode.
  22746. See documentation for the variable of the same name for more details.
  22747.  
  22748. If called interactively with no prefix argument, toggle current condition
  22749. of the mode.
  22750. If called with a positive or negative prefix argument, enable or disable
  22751. the mode, respectively.
  22752. Fturn-on-eldoc-mode
  22753. Unequivocally turn on eldoc-mode (see variable documentation).
  22754. Felp-instrument-function
  22755. Instrument FUNSYM for profiling.
  22756. FUNSYM must be a symbol of a defined function.
  22757. Felp-restore-function
  22758. Restore an instrumented function to its original definition.
  22759. Argument FUNSYM is the symbol of a defined function.
  22760. Felp-instrument-list
  22761. Instrument for profiling, all functions in `elp-function-list'.
  22762. Use optional LIST if provided instead.
  22763. Felp-instrument-package
  22764. Instrument for profiling, all functions which start with PREFIX.
  22765. For example, to instrument all ELP functions, do the following:
  22766.  
  22767.     \[elp-instrument-package] RET elp- RET
  22768. Felp-results
  22769. Display current profiling results.
  22770. If `elp-reset-after-results' is non-nil, then current profiling
  22771. information for all instrumented functions are reset after results are
  22772. displayed.
  22773. Felp-submit-bug-report
  22774. Submit via mail, a bug report on elp.
  22775. Vfacemenu-menu
  22776. Facemenu top-level menu keymap.
  22777. Vfacemenu-keymap
  22778. Keymap for face-changing commands.
  22779. `Facemenu-update' fills in the keymap according to the bindings
  22780. requested in `facemenu-keybindings'.
  22781. Ffacemenu-set-face
  22782. Add FACE to the region or next character typed.
  22783. It will be added to the top of the face list; any faces lower on the list that
  22784. will not show through at all will be removed.
  22785.  
  22786. Interactively, the face to be used is read with the minibuffer.
  22787.  
  22788. If the region is active and there is no prefix argument,
  22789. this command sets the region to the requested face.
  22790.  
  22791. Otherwise, this command specifies the face for the next character
  22792. inserted.  Moving point or switching buffers before
  22793. typing a character to insert cancels the specification.
  22794. Ffacemenu-set-foreground
  22795. Set the foreground color of the region or next character typed.
  22796. The color is prompted for.  A face named `fg:color' is used (or created).
  22797. If the region is active, it will be set to the requested face.  If
  22798. it is inactive (even if mark-even-if-inactive is set) the next
  22799. character that is typed (via `self-insert-command') will be set to
  22800. the selected face.  Moving point or switching buffers before
  22801. typing a character cancels the request.
  22802. Ffacemenu-set-background
  22803. Set the background color of the region or next character typed.
  22804. The color is prompted for.  A face named `bg:color' is used (or created).
  22805. If the region is active, it will be set to the requested face.  If
  22806. it is inactive (even if mark-even-if-inactive is set) the next
  22807. character that is typed (via `self-insert-command') will be set to
  22808. the selected face.  Moving point or switching buffers before
  22809. typing a character cancels the request.
  22810. Ffacemenu-set-face-from-menu
  22811. Set the face of the region or next character typed.
  22812. This function is designed to be called from a menu; the face to use
  22813. is the menu item's name.
  22814.  
  22815. If the region is active and there is no prefix argument,
  22816. this command sets the region to the requested face.
  22817.  
  22818. Otherwise, this command specifies the face for the next character
  22819. inserted.  Moving point or switching buffers before
  22820. typing a character to insert cancels the specification.
  22821. Ffacemenu-set-invisible
  22822. Make the region invisible.
  22823. This sets the `invisible' text property; it can be undone with
  22824. `facemenu-remove-special'.
  22825. Ffacemenu-set-intangible
  22826. Make the region intangible: disallow moving into it.
  22827. This sets the `intangible' text property; it can be undone with
  22828. `facemenu-remove-special'.
  22829. Ffacemenu-set-read-only
  22830. Make the region unmodifiable.
  22831. This sets the `read-only' text property; it can be undone with
  22832. `facemenu-remove-special'.
  22833. Ffacemenu-remove-props
  22834. Remove all text properties that facemenu added to region.
  22835. Ffacemenu-remove-special
  22836. Remove all the "special" text properties from the region.
  22837. These special properties include `invisible', `intangible' and `read-only'.
  22838. Flist-text-properties-at
  22839. Pop up a buffer listing text-properties at LOCATION.
  22840. Flist-colors-display
  22841. Display names of defined colors, and show what they look like.
  22842. If the optional argument LIST is non-nil, it should be a list of
  22843. colors to display.  Otherwise, this command computes a list
  22844. of colors that the current display can handle.
  22845. Ffloating-toolbar
  22846. Popup a toolbar near the current mouse position.
  22847. The toolbar instantiator used is taken from the 'floating-toolbar
  22848. property of any extent under the mouse.  If no such non-nil
  22849. property exists for any extent under the mouse, then the value of the
  22850. variable `floating-toolbar' is checked.  If its value si nil, then
  22851. no toolbar will be displayed.
  22852.  
  22853. This command should be bound to a button press event.
  22854.  
  22855. When called from a program, first arg EVENT should be the button
  22856. press event.  Optional second arg EXTENT-LOCAL-ONLY specifies
  22857. that only extent local toolbars should be used; this means the
  22858. `floating-toolbar' variable will not be consulted.
  22859. Ffloating-toolbar-or-popup-mode-menu
  22860. Like floating-toolbar, but if no toolbar is displayed
  22861. run popup-mode-menu.
  22862. Ffloating-toolbar-from-extent-or-popup-mode-menu
  22863. Like floating-toolbar-or-popup-mode-menu, but search only for an
  22864. extent local toolbar.
  22865. Fenable-flow-control
  22866. Toggle flow control handling.
  22867. When handling is enabled, user can type C-s as C-\, and C-q as C-^.
  22868. With arg, enable flow control mode if arg is positive, otherwise disable.
  22869. Fenable-flow-control-on
  22870. Enable flow control if using one of a specified set of terminal types.
  22871. Use `(enable-flow-control-on "vt100" "h19")' to enable flow control
  22872. on VT-100 and H19 terminals.  When flow control is enabled,
  22873. you must type C-\ to get the effect of a C-s, and type C-^
  22874. to get the effect of a C-q.
  22875.  
  22876. This function has no effect unless the current device is a tty.
  22877.  
  22878. The tty terminal type is determined from the TERM environment variable.
  22879. Trailing hyphens and everything following is stripped, so a TERM
  22880. value of "vt100-nam" is treated the same as "vt100".
  22881. Fforms-mode
  22882. Major mode to visit files in a field-structured manner using a form.
  22883.  
  22884. Commands:                        Equivalent keys in read-only mode:
  22885.  TAB            forms-next-field          TAB
  22886.  \C-c TAB       forms-next-field          
  22887.  \C-c <         forms-first-record         <
  22888.  \C-c >         forms-last-record          >
  22889.  \C-c ?         describe-mode              ?
  22890.  \C-c \C-k      forms-delete-record
  22891.  \C-c \C-q      forms-toggle-read-only     q
  22892.  \C-c \C-o      forms-insert-record
  22893.  \C-c \C-l      forms-jump-record          l
  22894.  \C-c \C-n      forms-next-record          n
  22895.  \C-c \C-p      forms-prev-record          p
  22896.  \C-c \C-r      forms-search-backward      r
  22897.  \C-c \C-s      forms-search-forward       s
  22898.  \C-c \C-x      forms-exit                 x
  22899.  
  22900. Fforms-find-file
  22901. Visit a file in Forms mode.
  22902. Fforms-find-file-other-window
  22903. Visit a file in Forms mode in other window.
  22904. Fhide-copyleft-region
  22905. Make the legal drivel at the front of this file invisible.  Unhide it again
  22906. with C-u \[hide-copyleft-region].
  22907. Funhide-copyleft-region
  22908. If the legal nonsense at the top of this file is elided, make it visible again.
  22909. Fhighlight-headers
  22910. Highlight message headers between start and end.
  22911. Faces used:
  22912.   message-headers            the part before the colon
  22913.   message-header-contents        the part after the colon
  22914.   message-highlighted-header-contents    contents of "special" headers
  22915.   message-cited-text            quoted text from other messages
  22916.  
  22917. Variables used:
  22918.  
  22919.   highlight-headers-regexp            what makes a "special" header
  22920.   highlight-headers-citation-regexp        matches lines of quoted text
  22921.   highlight-headers-citation-header-regexp    matches headers for quoted text
  22922.  
  22923. If HACK-SIG is true,then we search backward from END for something that
  22924. looks like the beginning of a signature block, and don't consider that a
  22925. part of the message (this is because signatures are often incorrectly
  22926. interpreted as cited text.)
  22927. Vhippie-expand-try-functions-list
  22928. The list of expansion functions tried in order by `hippie-expand'.
  22929. To change the behavior of `hippie-expand', remove, change the order of,
  22930. or insert functions in this list.
  22931. Vhippie-expand-verbose
  22932. *Non-nil makes `hippie-expand' output which function it is trying.
  22933. Vhippie-expand-max-buffers
  22934. *The maximum number of buffers (apart from the current) searched.
  22935. If nil, all buffers are searched.
  22936. Vhippie-expand-ignore-buffers
  22937. *A list specifying which buffers not to search (if not current).
  22938. Can contain both regexps matching buffer names (as strings) and major modes
  22939. (as atoms)
  22940. Fhippie-expand
  22941. Try to expand text before point, using multiple methods.
  22942. The expansion functions in `hippie-expand-try-functions-list' are
  22943. tried in order, until a possible expansion is found.  Repeated
  22944. application of `hippie-expand' inserts successively possible
  22945. expansions.  
  22946. With a positive numeric argument, jumps directly to the ARG next
  22947. function in this list.  With a negative argument or just \[universal-argument], 
  22948. undoes the expansion.
  22949. Fmake-hippie-expand-function
  22950. Construct a function similar to `hippie-expand'.
  22951. Make it use the expansion functions in TRY-LIST.  An optional second
  22952. argument VERBOSE non-nil makes the function verbose.
  22953. Fid-select-install
  22954. Install the id-select mode as the default mode of operation.
  22955. Fid-select-thing
  22956. Mark the region selected by the syntax of the thing at point.
  22957. If invoked repeatedly, selects bigger and bigger things.
  22958. If `id-select-display-type' is non-nil, the type of selection is displayed in
  22959. the minibuffer.
  22960. Fid-select-thing-with-mouse
  22961. Select a region based on the syntax of the character from a mouse click.
  22962. If the click occurs at the same point as the last click, select
  22963. the next larger syntactic structure.  If `id-select-display-type' is non-nil,
  22964. the type of selection is displayed in the minibuffer.
  22965. Fid-select-goto-matching-tag
  22966. If in a major mode listed in `id-select-markup-modes,' moves point to the start of the tag paired with the closest tag that point is within or precedes.
  22967. Returns t if point is moved, else nil.
  22968. Signals an error if no tag is found following point or if the closing tag
  22969. does not have a `>' terminator character.
  22970. Fid-select-and-copy-thing
  22971. Copy the region surrounding the syntactical unit at point.
  22972. Fid-select-and-kill-thing
  22973. Kill the region surrounding the syntactical unit at point.
  22974. Fid-select-double-click-hook
  22975. Select a region based on the syntax of the character wherever the mouse is double-clicked.
  22976. If the double-click occurs at the same point as the last double-click, select
  22977. the next larger syntactic structure.  If `id-select-display-type' is non-nil,
  22978. the type of selection is displayed in the minibuffer.
  22979. Funload-feature
  22980. Unload the library that provided FEATURE, restoring all its autoloads.
  22981. If the feature is required by any other loaded code, and optional FORCE
  22982. is nil, raise an error.
  22983. Fmail-extract-address-components
  22984. Given an RFC-822 ADDRESS, extract full name and canonical address.
  22985. Returns a list of the form (FULL-NAME CANONICAL-ADDRESS).
  22986. If no name can be extracted, FULL-NAME will be nil.
  22987. ADDRESS may be a string or a buffer.  If it is a buffer, the visible 
  22988.  (narrowed) portion of the buffer will be interpreted as the address.
  22989.  (This feature exists so that the clever caller might be able to avoid
  22990.  consing a string.)
  22991. If ADDRESS contains more than one RFC-822 address, only the first is
  22992.  returned.  Some day this function may be extended to extract multiple
  22993.  addresses, or perhaps return the position at which parsing stopped.
  22994. Fwhat-domain
  22995. Prompts for a mail domain, and prints the country it corresponds to
  22996. in the minibuffer.
  22997. Vmail-use-rfc822
  22998. *If non-nil, use a full, hairy RFC822 parser on mail addresses.
  22999. Otherwise, (the default) use a smaller, somewhat faster, and
  23000. often correct parser.
  23001. Vrmail-dont-reply-to-names
  23002. *A regexp specifying names to prune of reply to messages.
  23003. A value of nil means exclude your own name only.
  23004. Fmail-fetch-field
  23005. Return the value of the header field FIELD-NAME.
  23006. The buffer is expected to be narrowed to just the headers of the message.
  23007. If second arg LAST is non-nil, use the last such field if there are several.
  23008. If third arg ALL is non-nil, concatenate all such fields with commas between.
  23009. Fread-passwd
  23010. Prompts for a password in the minibuffer, and returns it as a string.
  23011. If PROMPT may be a prompt string or an alist of elements 
  23012. '(prompt . default).
  23013. If optional arg CONFIRM is true, then ask the user to type the password
  23014. again to confirm that they typed it correctly.
  23015. If optional arg DEFAULT is provided, then it is a string to insert as
  23016. the default choice (it is not, of course, displayed.)
  23017.  
  23018. If running under X, the keyboard will be grabbed (with XGrabKeyboard())
  23019. to reduce the possibility that eavesdropping is occuring.
  23020.  
  23021. When reading a password, all keys self-insert, except for:
  23022. \<read-passwd-map>
  23023.     \[read-passwd-erase-line]    Erase the entire line.
  23024.     \[quoted-insert]    Insert the next character literally.
  23025.     \[delete-backward-char]    Delete the previous character.
  23026.     \[exit-minibuffer]    Accept what you have typed.
  23027.     \[keyboard-quit]    Abort the command.
  23028.  
  23029. The returned value is always a newly-created string.  No additional copies
  23030. of the password remain after this function has returned.
  23031.  
  23032. NOTE: unless great care is taken, the typed password will exist in plaintext
  23033. form in the running image for an arbitrarily long time.  Priveleged users may
  23034. be able to extract it from memory.  If emacs crashes, it may appear in the
  23035. resultant core file.
  23036.  
  23037. Some steps you can take to prevent the password from being copied around:
  23038.  
  23039.  - as soon as you are done with the returned string, destroy it with
  23040.    (fillarray string 0).  The same goes for any default passwords
  23041.    or password histories.
  23042.  
  23043.  - do not copy the string, as with concat or substring - if you do, be
  23044.    sure to keep track of and destroy all copies.
  23045.  
  23046.  - do not insert the password into a buffer - if you do, be sure to 
  23047.    overwrite the buffer text before killing it, as with the functions 
  23048.    `passwd-erase-buffer' or `passwd-kill-buffer'.  Note that deleting
  23049.    the text from the buffer does NOT necessarily remove the text from
  23050.    memory.
  23051.  
  23052.  - be careful of the undo history - if you insert the password into a 
  23053.    buffer which has undo recording turned on, the password will be 
  23054.    copied onto the undo list, and thus recoverable.
  23055.  
  23056.  - do not pass it as an argument to a shell command - anyone will be
  23057.    able to see it if they run `ps' at the right time.
  23058.  
  23059. Note that the password will be temporarily recoverable with the `view-lossage'
  23060. command.  This data will not be overwritten until another hundred or so 
  23061. characters are typed.  There's not currently a way around this.
  23062. Fpp
  23063. Output the pretty-printed representation of OBJECT, any Lisp object.
  23064. Quoting characters are printed when needed to make output that `read'
  23065. can handle, whenever this is possible.
  23066. Output stream is STREAM, or value of `standard-output' (which see).
  23067. Fpp-eval-expression
  23068. Evaluate EXPRESSION and pretty-print value into a new display buffer.
  23069. If the pretty-printed value fits on one line, the message line is used
  23070. instead.  Value is also consed on to front of variable  values 's
  23071. value.
  23072. Fpp-eval-last-sexp
  23073. Run `pp-eval-expression' on sexp before point (which see).
  23074. With argument, pretty-print output into current buffer.
  23075. Ignores leading comment characters.
  23076. Fpp-function
  23077. Pretty print the function definition of SYMBOL in a separate buffer
  23078. Fpp-variable
  23079. Pretty print the variable value of SYMBOL in a separate buffer
  23080. Fpp-plist
  23081. Pretty print the property list of SYMBOL in a separate buffer
  23082. Fmacroexpand-sexp
  23083. Macro expand the sexpression following point. Pretty print expansion in a
  23084. temporary buffer. With prefix argument, replace the original
  23085. sexpression by its expansion in the current buffer.
  23086. Fmacroexpand-all-sexp
  23087. Macro expand recursively the sexpression following point. Pretty print
  23088. expansion in a temporary buffer. With prefix argument, replace the
  23089. original sexpression by its expansion in the current buffer.
  23090. Fprettyexpand-sexp
  23091. Macro expand the sexpression following point. Pretty print expansion
  23092. in a temporary buffer. With prefix argument, replace the original
  23093. sexpression by its expansion in the current buffer.  
  23094.     However, calls to macros specified in the variable
  23095. `pp-shadow-expansion-list' are not expanded, in order to make the code
  23096. look nicer.
  23097. Fprettyexpand-all-sexp
  23098. Macro expand recursively the sexpression following point. Pretty print
  23099. expansion in a temporary buffer. With prefix argument, replace the
  23100. original sexpression by its expansion in the current buffer.
  23101.     However, calls to macros specified in the variable
  23102. `pp-shadow-expansion-list' are not expanded, in order to make the code
  23103. look nicer.
  23104. Fregexp-opt
  23105. Return a regexp to match a string in STRINGS.
  23106. Each string should be unique in STRINGS and should not contain any regexps,
  23107. quoted or not. If optional PAREN is non-nil, ensure that the returned
  23108. regexp is enclosed by at least one regexp match grouping construct.  If
  23109. optional NON-SHY is non nil, the inner groupings will use "\\( \\)" grouping,
  23110. rather than the default "\\(?: \\)" 'shy', or non-match-capturing groups.
  23111. The returned regexp is typically more efficient than the equivalent regexp:
  23112.  
  23113.  (let ((open-paren (if PAREN "\\(" "")) (close-paren (if PAREN "\\)" "")))
  23114.    (concat open-paren (mapconcat 'regexp-quote STRINGS "\\|") close-paren))
  23115.  
  23116. but typically contains more regexp grouping constructs.
  23117. Use `regexp-opt-depth' to count them.
  23118. Fregexp-opt-depth
  23119. Return the depth of REGEXP.
  23120. This means the number of regexp grouping constructs (parenthesised expressions)
  23121. in REGEXP, not counting the "\\(?: \\)" non-match-capturing groups unless
  23122. COUNT-SHY-GROUPS-TOO is non-nil.
  23123. See `regexp-opt'.
  23124. Fringp
  23125. Returns t if X is a ring; nil otherwise.
  23126. Fmake-ring
  23127. Make a ring that can contain SIZE elements.
  23128. Fsavehist-load
  23129. Load the minibuffer histories from `savehist-file'.
  23130. Unless NO-HOOK is specified, the function will also add the save function
  23131. to `kill-emacs-hook', thus ensuring that the minibuffer contents will be
  23132. saved before leaving Emacs.
  23133.  
  23134. This function should be normally used from your Emacs init file.  Since it
  23135. removes your current minibuffer histories, it is unwise to call it at any
  23136. other time.
  23137. Fsavehist-save
  23138. Save the histories from `savehist-history-variables' to `savehist-file'.
  23139. A variable will be saved if it is bound and non-nil.
  23140. Flist-load-path-shadows
  23141. Display a list of Emacs Lisp files that shadow other files.
  23142.  
  23143. This function lists potential load-path problems.  Directories in the
  23144. `load-path' variable are searched, in order, for Emacs Lisp
  23145. files.  When a previously encountered file name is found again, a
  23146. message is displayed indicating that the later file is "hidden" by
  23147. the earlier.
  23148.  
  23149. For example, suppose `load-path' is set to
  23150.  
  23151. ("/usr/gnu/emacs/site-lisp" "/usr/gnu/emacs/share/emacs/19.30/lisp")
  23152.  
  23153. and that each of these directories contains a file called XXX.el.  Then
  23154. XXX.el in the site-lisp directory is referred to by all of:
  23155. (require 'XXX), (autoload .... "XXX"), (load-library "XXX") etc.
  23156.  
  23157. The first XXX.el file prevents emacs from seeing the second (unless
  23158. the second is loaded explicitly via load-file).
  23159.  
  23160. When not intended, such shadowings can be the source of subtle
  23161. problems.  For example, the above situation may have arisen because the
  23162. XXX package was not distributed with versions of emacs prior to
  23163. 19.30.  An emacs maintainer downloaded XXX from elsewhere and installed
  23164. it.  Later, XXX was updated and included in the emacs distribution.
  23165. Unless the emacs maintainer checks for this, the new version of XXX
  23166. will be hidden behind the old (which may no longer work with the new
  23167. emacs version).
  23168.  
  23169. This function performs these checks and flags all possible
  23170. shadowings.  Because a .el file may exist without a corresponding .elc
  23171. (or vice-versa), these suffixes are essentially ignored.  A file
  23172. XXX.elc in an early directory (that does not contain XXX.el) is
  23173. considered to shadow a later file XXX.el, and vice-versa.
  23174.  
  23175. When run interactively, the shadowings (if any) are displayed in a
  23176. buffer called `*Shadows*'.  Shadowings are located by calling the
  23177. (non-interactive) companion function, `find-emacs-lisp-shadows'.
  23178. Vskeleton-filter
  23179. Function for transforming a skeleton proxy's aliases' variable value.
  23180. Fdefine-skeleton
  23181. Define a user-configurable COMMAND that enters a statement skeleton.
  23182. DOCUMENTATION is that of the command, while the variable of the same name,
  23183. which contains the skeleton, has a documentation to that effect.
  23184. INTERACTOR and ELEMENT ... are as defined under `skeleton-insert'.
  23185. Fskeleton-proxy-new
  23186. Insert skeleton defined by variable of same name (see `skeleton-insert').
  23187. Prefix ARG allows wrapping around words or regions (see `skeleton-insert').
  23188. If no ARG was given, but the region is visible, ARG defaults to -1 depending
  23189. on `skeleton-autowrap'.  An ARG of  M-0  will prevent this just for once.
  23190. This command can also be an abbrev expansion (3rd and 4th columns in
  23191. \[edit-abbrevs]  buffer: ""  command-name).
  23192.  
  23193. When called as a function, optional first argument STR may also be a string
  23194. which will be the value of `str' whereas the skeleton's interactor is then
  23195. ignored.
  23196. Fskeleton-proxy
  23197. Insert skeleton defined by variable of same name (see `skeleton-insert').
  23198. Prefix ARG allows wrapping around words or regions (see `skeleton-insert').
  23199. If no ARG was given, but the region is visible, ARG defaults to -1 depending
  23200. on `skeleton-autowrap'.  An ARG of  M-0  will prevent this just for once.
  23201. This command can also be an abbrev expansion (3rd and 4th columns in
  23202. \[edit-abbrevs]  buffer: ""  command-name).
  23203.  
  23204. When called as a function, optional first argument STR may also be a string
  23205. which will be the value of `str' whereas the skeleton's interactor is then
  23206. ignored.
  23207. Fskeleton-insert
  23208. Insert the complex statement skeleton SKELETON describes very concisely.
  23209.  
  23210. With optional third REGIONS wrap first interesting point (`_') in skeleton
  23211. around next REGIONS words, if REGIONS is positive.  If REGIONS is negative,
  23212. wrap REGIONS preceding interregions into first REGIONS interesting positions
  23213. (successive `_'s) in skeleton.  An interregion is the stretch of text between
  23214. two contiguous marked points.  If you marked A B C [] (where [] is the cursor)
  23215. in alphabetical order, the 3 interregions are simply the last 3 regions.  But
  23216. if you marked B A [] C, the interregions are B-A, A-[], []-C.
  23217.  
  23218. Optional fourth STR is the value for the variable `str' within the skeleton.
  23219. When this is non-`nil' the interactor gets ignored, and this should be a valid
  23220. skeleton element.
  23221.  
  23222. SKELETON is made up as (INTERACTOR ELEMENT ...).  INTERACTOR may be nil if
  23223. not needed, a prompt-string or an expression for complex read functions.
  23224.  
  23225. If ELEMENT is a string or a character it gets inserted (see also
  23226. `skeleton-transformation').  Other possibilities are:
  23227.  
  23228.     \n    go to next line and indent according to mode
  23229.     _    interesting point, interregion here, point after termination
  23230.     >    indent line (or interregion if > _) according to major mode
  23231.     &    do next ELEMENT if previous moved point
  23232.     |    do next ELEMENT if previous didn't move point
  23233.     -num    delete num preceding characters (see `skeleton-untabify')
  23234.     resume:    skipped, continue here if quit is signaled
  23235.     nil    skipped
  23236.  
  23237. Further elements can be defined via `skeleton-further-elements'.  ELEMENT may
  23238. itself be a SKELETON with an INTERACTOR.  The user is prompted repeatedly for
  23239. different inputs.  The SKELETON is processed as often as the user enters a
  23240. non-empty string.  \[keyboard-quit] terminates skeleton insertion, but
  23241. continues after `resume:' and positions at `_' if any.  If INTERACTOR in such
  23242. a subskeleton is a prompt-string which contains a ".. %s .." it is
  23243. formatted with `skeleton-subprompt'.  Such an INTERACTOR may also a list of
  23244. strings with the subskeleton being repeated once for each string.
  23245.  
  23246. Quoted Lisp expressions are evaluated evaluated for their side-effect.
  23247. Other Lisp expressions are evaluated and the value treated as above.
  23248. Note that expressions may not return `t' since this implies an
  23249. endless loop.  Modes can define other symbols by locally setting them
  23250. to any valid skeleton element.  The following local variables are
  23251. available:
  23252.  
  23253.     str    first time: read a string according to INTERACTOR
  23254.         then: insert previously read string once more
  23255.     help    help-form during interaction with the user or `nil'
  23256.     input    initial input (string or cons with index) while reading str
  23257.     v1, v2    local variables for memorizing anything you want
  23258.  
  23259. When done with skeleton, but before going back to `_'-point call
  23260. `skeleton-end-hook' if that is non-`nil'.
  23261. Fskeleton-pair-insert-maybe
  23262. Insert the character you type ARG times.
  23263.  
  23264. With no ARG, if `skeleton-pair' is non-nil, pairing can occur.  If the region
  23265. is visible the pair is wrapped around it depending on `skeleton-autowrap'.
  23266. Else, if `skeleton-pair-on-word' is non-nil or we are not before or inside a
  23267. word, and if `skeleton-pair-filter' returns nil, pairing is performed.
  23268.  
  23269. If a match is found in `skeleton-pair-alist', that is inserted, else
  23270. the defaults are used.  These are (), [], {}, <> and `' for the
  23271. symmetrical ones, and the same character twice for the others.
  23272. Fspeedbar-frame-mode
  23273. Enable or disable speedbar.  Positive ARG means turn on, negative turn off.
  23274. nil means toggle.  Once the speedbar frame is activated, a buffer in
  23275. `speedbar-mode' will be displayed.  Currently, only one speedbar is
  23276. supported at a time.
  23277. Fspeedbar-get-focus
  23278. Change frame focus to or from the speedbar frame.
  23279. If the selected frame is not speedbar, then speedbar frame is
  23280. selected.  If the speedbar frame is active, then select the attached frame.
  23281. Frestore-initial-toolbar
  23282. Restores the default toolbar defined by initial-toolbar-spec.
  23283. Ftoolbar-add-item
  23284. Add a toolbar item ITEM at the first location of the toolbar specifier. 
  23285. Optionally, can specify an INDEX position to insert the ITEM.  The default is
  23286. to use default-toolbar, but a different specifier can by specified with 
  23287. TOOLBAR-SPEC.
  23288. Ftoolbar-kill-item-pos
  23289. Remove a toolbar item ITEM at the first location of the toolbar specifier.  
  23290. Optionally, can specify an INDEX position where to remove the ITEM.  The 
  23291. default is to use default-toolbar, but a different specifier can by 
  23292. specified with TOOLBAR-SPEC.
  23293. Ftoolbar-kill-item
  23294. Remove a toolbar item ITEM at the first location of the toolbar specifier.  
  23295. Optionally, can specify an ITEM to remove.  The ITEM must be in form of a 
  23296. vector.  The default is to use default-toolbar, but a different specifier 
  23297. can by specified with TOOLBAR-SPEC.
  23298. Ftq-create
  23299. Create and return a transaction queue communicating with PROCESS.
  23300. PROCESS should be a subprocess capable of sending and receiving
  23301. streams of bytes.  It may be a local process, or it may be connected
  23302. to a tcp server on another machine.
  23303. Vtrace-buffer
  23304. *Trace output will by default go to that buffer.
  23305. Ftrace-function
  23306. Traces FUNCTION with trace output going to BUFFER.
  23307. For every call of FUNCTION Lisp-style trace messages that display argument
  23308. and return values will be inserted into BUFFER. This function generates the
  23309. trace advice for FUNCTION and activates it together with any other advice
  23310. there might be!! The trace BUFFER will popup whenever FUNCTION is called.
  23311. Do not use this to trace functions that switch buffers or do any other
  23312. display oriented stuff, use `trace-function-background' instead.
  23313. Ftrace-function-background
  23314. Traces FUNCTION with trace output going quietly to BUFFER.
  23315. For every call of FUNCTION Lisp-style trace messages that display argument
  23316. and return values will be inserted into BUFFER. This function generates the
  23317. trace advice for FUNCTION and activates it together with any other advice
  23318. there might be!! Trace output will quietly go to BUFFER without changing
  23319. the window or buffer configuration at all.
  23320. Fxbm-button-create
  23321. Returns a list of XBM image instantiators for a button displaying TEXT.
  23322. The list is of the form
  23323.    (UP DOWN DISABLED)
  23324. where UP, DOWN, and DISABLED are the up, down and disabled image
  23325. instantiators for the button.
  23326.  
  23327. BORDER-THICKNESS specifies how many pixels should be used for the
  23328. borders on the edges of the buttons.  It should be a positive integer,
  23329. or 0 to mean no border.
  23330. Fxpm-button-create
  23331. Returns a list of XPM image instantiators for a button displaying TEXT.
  23332. The list is of the form
  23333.    (UP DOWN DISABLED)
  23334. where UP, DOWN, and DISABLED are the up, down and disabled image
  23335. instantiators for the button.
  23336.  
  23337. SHADOW-THICKNESS specifies how many pixels should be used for the
  23338. shadows on the edges of the buttons.  It should be a positive integer,
  23339. or 0 to mean no shadows on the edges.
  23340. FG-COLOR is the color used to display the text.  It should be a string.
  23341. BG-COLOR is the background color the text will be displayed upon.
  23342. It should be a string.
  23343. Fmime/editor-mode
  23344. MIME minor mode for editing the tagged MIME message.
  23345.  
  23346. In this mode, basically, the message is composed in the tagged MIME
  23347. format. The message tag looks like:
  23348.  
  23349.     --[[text/plain; charset=ISO-2022-JP][7bit]]
  23350.  
  23351. The tag specifies the MIME content type, subtype, optional parameters
  23352. and transfer encoding of the message following the tag. Messages
  23353. without any tag are treated as `text/plain' by default. Charset and
  23354. transfer encoding are automatically defined unless explicitly
  23355. specified. Binary messages such as audio and image are usually hidden.
  23356. The messages in the tagged MIME format are automatically translated
  23357. into a MIME compliant message when exiting this mode.
  23358.  
  23359. Available charsets depend on Emacs version being used. The following
  23360. lists the available charsets of each emacs.
  23361.  
  23362. EMACS 18:    US-ASCII is only available.
  23363. NEmacs:        US-ASCII and ISO-2022-JP are available.
  23364. EMACS 19:    US-ASCII and ISO-8859-1 (or other charset) are available.
  23365. XEmacs 19:    US-ASCII and ISO-8859-1 (or other charset) are available.
  23366. Mule:        US-ASCII, ISO-8859-* (except for ISO-8859-5), KOI8-R,
  23367.         ISO-2022-JP, ISO-2022-JP-2, ISO-2022-KR, BIG5 and
  23368.         ISO-2022-INT-1 are available.
  23369.  
  23370. ISO-2022-JP-2 and ISO-2022-INT-1 charsets used in mule is expected to
  23371. be used to represent multilingual text in intermixed manner. Any
  23372. languages that has no registered charset are represented as either
  23373. ISO-2022-JP-2 or ISO-2022-INT-1 in mule.
  23374.  
  23375. If you want to use non-ISO-8859-1 charset in EMACS 19 or XEmacs 19,
  23376. please set variable `default-mime-charset'. This variable must be
  23377. symbol of which name is a MIME charset.
  23378.  
  23379. If you want to add more charsets in mule, please set variable
  23380. `charsets-mime-charset-alist'. This variable must be alist of which
  23381. key is list of leading-char/charset and value is symbol of MIME
  23382. charset. (leading-char is a term of MULE 1.* and 2.*. charset is a
  23383. term of XEmacs/mule, mule merged EMACS and MULE 3.*) If name of
  23384. coding-system is different as MIME charset, please set variable
  23385. `mime-charset-coding-system-alist'. This variable must be alist of
  23386. which key is MIME charset and value is coding-system.
  23387.  
  23388. Following commands are available in addition to major mode commands:
  23389.  
  23390. [make single part]
  23391. \[mime-editor/insert-text]    insert a text message.
  23392. \[mime-editor/insert-file]    insert a (binary) file.
  23393. \[mime-editor/insert-external]    insert a reference to external body.
  23394. \[mime-editor/insert-voice]    insert a voice message.
  23395. \[mime-editor/insert-message]    insert a mail or news message.
  23396. \[mime-editor/insert-mail]    insert a mail message.
  23397. \[mime-editor/insert-signature]    insert a signature file at end.
  23398. \[mime-editor/insert-key]    insert PGP public key.
  23399. \[mime-editor/insert-tag]    insert a new MIME tag.
  23400.  
  23401. [make enclosure (maybe multipart)]
  23402. \[mime-editor/enclose-alternative-region]    enclose as multipart/alternative.
  23403. \[mime-editor/enclose-parallel-region]    enclose as multipart/parallel.
  23404. \[mime-editor/enclose-mixed-region]    enclose as multipart/mixed.
  23405. \[mime-editor/enclose-digest-region]    enclose as multipart/digest.
  23406. \[mime-editor/enclose-signed-region]    enclose as PGP signed.
  23407. \[mime-editor/enclose-encrypted-region]    enclose as PGP encrypted.
  23408. \[mime-editor/enclose-quote-region]    enclose as verbose mode (to avoid to expand tags)
  23409.  
  23410. [other commands]
  23411. \[mime-editor/set-transfer-level-7bit]    set transfer-level as 7.
  23412. \[mime-editor/set-transfer-level-8bit]    set transfer-level as 8.
  23413. \[mime-editor/set-split]    set message splitting mode.
  23414. \[mime-editor/set-sign]    set PGP-sign mode.
  23415. \[mime-editor/set-encrypt]    set PGP-encryption mode.
  23416. \[mime-editor/preview-message]    preview editing MIME message.
  23417. \[mime-editor/exit]    exit and translate into a MIME compliant message.
  23418. \[mime-editor/help]    show this help.
  23419. \[mime-editor/maybe-translate]    exit and translate if in MIME mode, then split.
  23420.  
  23421. Additional commands are available in some major modes:
  23422. C-c C-c        exit, translate and run the original command.
  23423. C-c C-s        exit, translate and run the original command.
  23424.  
  23425. The following is a message example written in the tagged MIME format.
  23426. TABs at the beginning of the line are not a part of the message:
  23427.  
  23428.     This is a conventional plain text.  It should be translated
  23429.     into text/plain.
  23430.     --[[text/plain]]
  23431.     This is also a plain text.  But, it is explicitly specified as
  23432.     is.
  23433.     --[[text/plain; charset=ISO-8859-1]]
  23434.     This is also a plain text.  But charset is specified as
  23435.     iso-8859-1.
  23436.  
  23437.     íHola!  Buenos dφas.  ┐C≤mo estß usted?
  23438.     --[[text/enriched]]
  23439.     This is a <bold>enriched text</bold>.
  23440.     --[[image/gif][base64]]...image encoded in base64 here...
  23441.     --[[audio/basic][base64]]...audio encoded in base64 here...
  23442.  
  23443. User customizable variables (not documented all of them):
  23444.  mime-prefix
  23445.     Specifies a key prefix for MIME minor mode commands.
  23446.  
  23447.  mime-ignore-preceding-spaces
  23448.     Preceding white spaces in a message body are ignored if non-nil.
  23449.  
  23450.  mime-ignore-trailing-spaces
  23451.     Trailing white spaces in a message body are ignored if non-nil.
  23452.  
  23453.  mime-auto-hide-body
  23454.     Hide a non-textual body message encoded in base64 after insertion
  23455.     if non-nil.
  23456.  
  23457.  mime-editor/transfer-level
  23458.     A number of network transfer level.  It should be bigger than 7.
  23459.     If you are in 8bit-through environment, please set 8.
  23460.  
  23461.  mime-editor/voice-recorder
  23462.     Specifies a function to record a voice message and encode it.
  23463.     The function `mime-editor/voice-recorder-for-sun' is for Sun
  23464.     SparcStations.
  23465.  
  23466.  mime/editor-mode-hook
  23467.     Turning on MIME mode calls the value of mime/editor-mode-hook, if
  23468.     it is non-nil.
  23469.  
  23470.  mime-editor/translate-hook
  23471.     The value of mime-editor/translate-hook is called just before translating
  23472.     the tagged MIME format into a MIME compliant message if it is
  23473.     non-nil.  If the hook call the function mime-editor/insert-signature,
  23474.     the signature file will be inserted automatically.
  23475.  
  23476.  mime-editor/exit-hook
  23477.     Turning off MIME mode calls the value of mime-editor/exit-hook, if it is
  23478.     non-nil.
  23479. Fview-charset
  23480. Display character table of CHARSET.
  23481. Fview-charset-by-menu
  23482. Display character table of CHARSET by pop-up menu.
  23483. Fskk-isearch-mode-setup
  23484. hook function called when skk isearch begin.
  23485. Fskk-isearch-mode-cleanup
  23486. Hook function called when skk isearch is done.
  23487. Fskk-tutorial
  23488. SKK $(B%A%e!<%H%j%
  23489. Fvip-mode
  23490. Turn on VIP emulation of VI.
  23491. Vrmail-dont-reply-to-names
  23492. *A regexp specifying names to prune of reply to messages.
  23493. A value of nil means exclude your own name only.
  23494. Vrmail-default-dont-reply-to-names
  23495. A regular expression specifying part of the value of the default value of
  23496. the variable `rmail-dont-reply-to-names', for when the user does not set
  23497. `rmail-dont-reply-to-names' explicitly.  (The other part of the default
  23498. value is the user's name.)
  23499. It is useful to set this variable in the site customization file.
  23500. Vrmail-delete-after-output
  23501. *Non-nil means automatically delete a message that is copied to a file.
  23502. Vrmail-primary-inbox-list
  23503. *List of files which are inboxes for user's primary mail file `~/RMAIL'.
  23504. `nil' means the default, which is ("/usr/spool/mail/$USER")
  23505. (the name varies depending on the operating system,
  23506. and the value of the environment variable MAIL overrides it).
  23507. Vrmail-mail-new-frame
  23508. *Non-nil means Rmail makes a new frame for composing outgoing mail.
  23509. Vrmail-retry-setup-hook
  23510. Hook that `rmail-retry-failure' uses in place of `mail-setup-hook'.
  23511. Frmail
  23512. Read and edit incoming mail.
  23513. Moves messages into file named by `rmail-file-name' (a babyl format file)
  23514.  and edits that file in RMAIL Mode.
  23515. Type \[describe-mode] once editing that file, for a list of RMAIL commands.
  23516.  
  23517. May be called with filename as argument; then performs rmail editing on
  23518. that file, but does not copy any new mail into the file.
  23519. Frmail-mode
  23520. Rmail Mode is used by \<rmail-mode-map>\[rmail] for editing Rmail files.
  23521. All normal editing commands are turned off.
  23522. Instead, these commands are available:
  23523.  
  23524. \[rmail-beginning-of-message]    Move point to front of this message (same as \[beginning-of-buffer]).
  23525. \[scroll-up]    Scroll to next screen of this message.
  23526. \[scroll-down]    Scroll to previous screen of this message.
  23527. \[rmail-next-undeleted-message]    Move to Next non-deleted message.
  23528. \[rmail-previous-undeleted-message]    Move to Previous non-deleted message.
  23529. \[rmail-next-message]    Move to Next message whether deleted or not.
  23530. \[rmail-previous-message]    Move to Previous message whether deleted or not.
  23531. \[rmail-first-message]    Move to the first message in Rmail file.
  23532. \[rmail-last-message]    Move to the last message in Rmail file.
  23533. \[rmail-show-message]    Jump to message specified by numeric position in file.
  23534. \[rmail-search]    Search for string and show message it is found in.
  23535. \[rmail-delete-forward]    Delete this message, move to next nondeleted.
  23536. \[rmail-delete-backward]    Delete this message, move to previous nondeleted.
  23537. \[rmail-undelete-previous-message]    Undelete message.  Tries current message, then earlier messages
  23538.     till a deleted message is found.
  23539. \[rmail-edit-current-message]    Edit the current message.  \[rmail-cease-edit] to return to Rmail.
  23540. \[rmail-expunge]    Expunge deleted messages.
  23541. \[rmail-expunge-and-save]    Expunge and save the file.
  23542. \[rmail-quit]       Quit Rmail: expunge, save, then switch to another buffer.
  23543. \[save-buffer] Save without expunging.
  23544. \[rmail-get-new-mail]    Move new mail from system spool directory into this file.
  23545. \[rmail-mail]    Mail a message (same as \[mail-other-window]).
  23546. \[rmail-continue]    Continue composing outgoing message started before.
  23547. \[rmail-reply]    Reply to this message.  Like \[rmail-mail] but initializes some fields.
  23548. \[rmail-retry-failure]    Send this message again.  Used on a mailer failure message.
  23549. \[rmail-forward]    Forward this message to another user.
  23550. \[rmail-output-to-rmail-file]       Output this message to an Rmail file (append it).
  23551. \[rmail-output]    Output this message to a Unix-format mail file (append it).
  23552. \[rmail-input]    Input Rmail file.  Run Rmail on that file.
  23553. \[rmail-add-label]    Add label to message.  It will be displayed in the mode line.
  23554. \[rmail-kill-label]    Kill label.  Remove a label from current message.
  23555. \[rmail-next-labeled-message]   Move to Next message with specified label
  23556.           (label defaults to last one specified).
  23557.           Standard labels: filed, unseen, answered, forwarded, deleted.
  23558.           Any other label is present only if you add it with \[rmail-add-label].
  23559. \[rmail-previous-labeled-message]   Move to Previous message with specified label
  23560. \[rmail-summary]    Show headers buffer, with a one line summary of each message.
  23561. \[rmail-summary-by-labels]    Summarize only messages with particular label(s).
  23562. \[rmail-summary-by-recipients]   Summarize only messages with particular recipient(s).
  23563. \[rmail-summary-by-regexp]   Summarize only messages with particular regexp(s).
  23564. \[rmail-summary-by-topic]   Summarize only messages with subject line regexp(s).
  23565. \[rmail-toggle-header]    Toggle display of complete header.
  23566. Frmail-input
  23567. Run Rmail on file FILENAME.
  23568. Fbatch-unrmail
  23569. Convert Rmail files to mailbox files.
  23570. Specify the input Rmail file names as command line arguments.
  23571. For each Rmail file, the corresponding output file name
  23572. is made by adding `.mail' at the end.
  23573. For example, invoke `emacs -batch -f batch-unrmail RMAIL'.
  23574. Funrmail
  23575. Convert Rmail file FILE to mailbox-format file TO-FILE.
  23576. Fhtml-mode
  23577. HTML mode.
  23578. Fhtml3-mode
  23579. HTML3 mode.
  23580. Fsgml-mode
  23581. Major mode for editing SGML.\<sgml-mode-map>
  23582. Makes > display the matching <.  Makes / display matching /.
  23583. Use \[sgml-validate] to validate your document with an SGML parser.
  23584.  
  23585. You can find information with:
  23586. \[sgml-show-context]  Show the nesting of elements at cursor position.
  23587. \[sgml-list-valid-tags]  Show the tags valid at cursor position.
  23588.  
  23589. Insert tags with completio